Avalara Cross-Border API Alternative: GingerControl

What changed: 99.86% is stated at the 10-digit level. The year is dropped from the title.

The short answer

AvaTax Cross-Border is built to calculate duty and import tax on transactions next to AvaTax sales tax, and we found no Avalara page that says how Section 301 lines appear. For an ERP integration lead at a manufacturer pricing about 1,800 import PO lines a month from China, Mexico and Korea, GingerControl's Classification + Tariff Calculation API is the alternative for the U.S. import side: one batch call of up to 120 PO lines by default returns each part's 10-digit HTS code and every Section 301, Section 232 and other Chapter 99 line. Keep AvaTax for sales tax.

Next step:Try the Classification Researcher on one product

In this post
  1. Does the Avalara Cross-Border duty calculator include Section 301?
  2. Is AvaTax Cross-Border part of AvaTax, or a separate product?
  3. How do Section 301 and Section 232 lines stack on a U.S. import?
  4. Can Avalara Cross-Border put import duty on purchase orders?
  5. Should a PO estimate use the PO date or the entry date?
  6. What are the alternatives to AvaTax Cross-Border for U.S. import duty?
  7. How does the GingerControl API differ from AvaTax Cross-Border?
  8. By the numbers: the U.S. import stack in October 2026
  9. Which tool fits which job for an ERP team?
  10. Putting every Chapter 99 line on your PO lines
  11. References

I'm Chen Cui, co-founder of GingerControl, and I built the duty layers our API returns for each import line. GingerControl's Classification + Tariff Calculation API is a REST API for enterprise systems: your ERP sends a part description and its country of origin, and gets back a 10-digit HTS code, the general and special rates, and one list per duty layer, each entry a Chapter 99 heading with its rate [1]. It starts with one call (talk to us), where we size your key to your calling pattern. Below I set it against AvaTax Cross-Border, Descartes, Zonos and Hurricane Commerce, and against the trade modules in SAP GTS and Oracle GTM.

Does the Avalara Cross-Border duty calculator include Section 301?

Avalara's own pages do not say: the AvaTax Cross-Border product page, read on October 10, 2026, says it "calculates and estimates customs duties and import taxes in real time," and neither that page, Avalara's developer overview nor its help center names Section 301 or shows how a Section 301 line would appear in a result [2][3][27]. The help center does cover Section 232: since its March 2026 release, Cross-Border customers can send a metal percentage and country of origin for each material, and Avalara "calculates Section 232 duty separately for each material percentage" [27].

RankPlatformStarting priceU.S. duty layer detail10-digit U.S. classificationComposite and split-code goodsBatch integrationOverallSuited for
1GingerControl Classification + Tariff Calculation APIEnterprise only, starts with a call, no published price4.94.84.84.74.8U.S. import duty on PO lines and entries, each Chapter 99 line per item
2Descartes (CustomsInfo, classification and duty)Quote-based4.24.03.64.24.0Tariff content for many import countries
3ZonosUS$2 + 10% of duties, taxes and fees per guaranteed order; Classify from US$500 a month3.64.23.04.43.8Merchants showing guaranteed landed cost at checkout
4Avalara Cross-BorderQuote-based; sales tax plans from $69 a month are separate3.64.13.04.13.7Teams already on AvaTax that sell cross-border
5Hurricane Commerce (Kona API)Quote-based3.53.93.24.23.7Duty and tax by API or through a portal

How we scored: GingerControl's editorial scores, October 2026, out of 5, not a lab test and not sourced data. U.S. duty layer detail is whether each item's duty comes back broken out by Chapter 99 heading (Classification + Tariff Calculation API). 10-digit U.S. classification is whether a plain part description becomes a 10-digit HTS code (Classification Researcher reasoning). Composite and split-code goods is whether goods dutied part by part, such as Chapter 91 watches, come back as components. Batch integration is how items are sent in bulk and mapped back to your records. Avalara Cross-Border, the product you are weighing, scores 3.7 overall. We left out the criteria where GingerControl is weakest: global duty coverage, VAT and sales tax, checkout DDP and published self-serve pricing. Vendor facts come from each vendor's own pages, read October 10, 2026; we did not run their tools [2][4][5][6][7][27].

Bottom line: For an ERP integration lead pricing about 1,800 import PO lines a month across three U.S. entities and a Mexico plant, the choice splits by job. GingerControl's API puts every U.S. Chapter 99 line on each PO line. Avalara Cross-Border fits checkout duty and import tax next to the AvaTax sales tax you already run. Zonos fits a brand that sells to shoppers abroad and wants the landed cost guaranteed.

Here is what Avalara's pages state today, and where they are silent. Read it as a list of questions to put to Avalara, not as a verdict on the product.

What an ERP team needs to knowWhat Avalara's pages say, read October 10, 2026
Does it calculate import duty?"Avalara AvaTax Cross-Border calculates and estimates customs duties and import taxes in real time."
Does it show Section 301, Section 232 or Chapter 99 lines?Section 301: not named on the Cross-Border page, the developer overview or in the help center. Section 232: per-material inputs in its March 2026 release notes. Chapter 99: one code in a "DutyRateBreakup" in the help center's postal-shipment example
Does it work on purchase orders?Not on the Cross-Border page. The help center shows duty on purchase orders in the Dynamics 365 Business Central connector (January 2026; its setup article asks for a ship-to country outside the U.S.) and in Avalara TradeHub, where "Your ERP pushes a new PO"
Does it need an HS code?FAQ: "For real-time calculation of customs duties and import taxes, yes."
What if we have no code yet?Avalara Cross-Border Estimated, which "only applies to new transactions; any backdated transactions will need an accurate HS-10 code to produce a calculation."
What goes in?"your product catalog with HS-6 or HS-10 classifications or item descriptions, listing details, and destination countries"
How accurate is it?No percentage and no guarantee; the page says "highly accurate, regularly updated tax rates"
What does it cost?Not public; a form to "connect with an Avalara global trade compliance expert"
How does it connect?REST APIs, "1,400+ signed partner integrations", and an FAQ on MCP servers for AI agents

Before IT switches it on, I would send Avalara three of your own lines and ask to see each duty layer on its own line: a China-origin casting that sits on a Section 301 list, a Mexico steel bracket with its melt and pour country, and a Korea aluminum part. If the answer comes back as one duty figure per line, you know what the trade team will have to rebuild by hand.

Is AvaTax Cross-Border part of AvaTax, or a separate product?

AvaTax Cross-Border is a separate product under the AvaTax name: Avalara publishes sales tax and returns plans "starting at $69/mo," but AvaTax Cross-Border has no public price and starts with a form to reach Avalara's global trade compliance team, and its help center says customs duties require "AvaTax Cross-Border (sold separately)" [2][27].

It does share the AvaTax family on Avalara's developer portal, where "AvaTax Cross-Border calculates duties, import taxes, and landed cost for international transactions" and "Avalara APIs provide REST interfaces" [3]. The portal's navigation offers an "AvaTax 90 days free trial," but the page does not say whether Cross-Border is in it. The code itself comes from a third product.

Avalara productWhat its page says it doesPrice on the page
AvaTax (sales tax)Sales tax and returns"starting at $69/mo"
AvaTax Cross-BorderCustoms duties and import taxes "in real time"Not public, form or demo
Avalara Cross-Border EstimatedEstimates for new transactions without an HS codeNot stated
Tariff Code Classification (where 3ce.com now redirects)Codes "in more than 180 countries"; its Self-Serve tier generates "mandatory universal 6-digit or country-specific 10-digit HTS codes", its Managed tier uses "a team of 260+ classifiers, plus proprietary AI"Not public, demo
Avalara Trade Compliance, Trade and Tariff LibraryListed with the customs products on the developer portalNot stated
Avalara TradeHub (help center, April 2026)A portal for importers and procurement teams to research classification, duties and restrictions "before they ship, file entries, or approve purchase orders"Not stated

Sources: Avalara's AvaTax Cross-Border page, developer portal, Tariff Code Classification page and help center, read October 10, 2026 [2][3][4][27].

That bundle is a real advantage if your company sells cross-border and already runs AvaTax: one vendor, one contract owner, sales tax and checkout duty in the same place. If your question is the duty on a casting your Mexico plant or a U.S. entity buys from China, you may be pricing two Avalara products, classification and calculation, unless every part already carries a 10-digit code. For Zonos, Avalara and GingerControl side by side for a brand that also sells at checkout, see Zonos vs Avalara vs GingerControl.

For castings entering the Mexico plant, confirm the MVE regime and submission calendar separately from the U.S. duty engine used for a U.S. entity.

How do Section 301 and Section 232 lines stack on a U.S. import?

They add up on the same entry line: the MFN rate of the 10-digit HTS code plus each Section 301 and Section 232 duty, every additional duty reported under its own Chapter 99 number, with CBP's instruction to report "the Chapter 99 HTSUS for Section 301" first, Section 232 after it and the Chapter 1 to 97 code last [8]. For how Section 232 and Section 301 differ as programs, see Section 232 vs Section 301 tariffs.

For a components manufacturer buying castings from China and steel and aluminum parts from Mexico and Korea, these are the lines that can land on a PO line entered on or after July 24, 2026:

LayerChapter 99 headingRateWhat decides it
MFN (general rate)None, it is column 1 of the 10-digit HTS lineSet per HTS lineThe HTS code [9]
China Section 301 lists9903.88.01, .02, .03; 9903.88.1525%; 7.5% for List 4AHTS code on a list, product of China [9]
China Section 301 four-year-review tiers9903.91.01 to .03, .05 to .08, .1125%, 50% or 100%Products of China listed in U.S. note 31, for entries from September 27, 2024, January 1, 2025 or January 1, 2026 [9]
Forced-labor Section 301China 9903.05.31; Mexico 9903.05.55; Korea 9903.05.70 or .7112.5%; 10%; Korea topped up to 12.5% combined with MFNOrigin, goods entered from July 24, 2026 [10]
Exemptions from the forced-labor Section 3019903.05.90; 9903.05.94No additional dutySection 232 articles; Mexican goods entered free under USMCA [8]
Section 232 steel and aluminumIts own heading by annex tier50% Annex I-A, 25% Annex I-B, 10% if the metal was U.S.-melted; on full customs value since April 6, 2026HTS code, metal content, melt and pour country [11]
Section 122 (expired)9903.03.0110%Only goods entered February 24 to July 23, 2026 [12]
IEEPA (ended)None after February 23, 2026NoneStruck down on February 20, 2026 [13][14]

Three details decide whether a PO line is right. First, a Section 232 steel or aluminum article is exempt from the forced-labor Section 301 under 9903.05.90, so your Mexico and Korea metal parts can owe Section 232 and no forced-labor line, while a China-origin cast part that sits on a Section 301 list and outside Section 232 owes both Section 301 lines [8]. Second, CBP still requires "the countries of melt and pour for all subject steel and steel derivative products and the countries of smelt and cast for all subject aluminum" on every entry, and goods outside Chapters 72, 73, 74 and 76 with less than 15% metal by weight pay no Section 232 duty [15]. Third, Proclamation 11032 added an Annex I-C tier: 25%, or 15% combined for Japan, Korea and several other partners, and for USMCA goods 25% on non-U.S. content with a 15% floor, through December 31, 2027 [16]. Which tier a part falls in follows its HTS code, so a wrong code moves the Section 232 rate as well as the base rate.

For a Korean-origin line, the South Korea import and KORUS guide reviews preference separately from the metal-duty layers discussed here.

The one run I can show you in full is on our own production Tariff Calculator, on October 6, 2026: HTS 6402.99.9005, a $25,000 ocean shipment loaded October 1 and entered October 6 [17]. It is not a casting, but it shows two Section 301 lines on one code:

Line on the China resultRateAmount
General rate20%$5,000
9903.88.15 (China Section 301, List 4A)7.5%$1,875
9903.05.31 (forced-labor Section 301, China)12.5%$3,125
MPF and HMF0.3464% and 0.125%$117.85
Duty and fees$10,117.85

The two Section 301 lines added $5,000, as much again as the base duty. From Mexico, the same run showed USMCA duty-free in its Special Rate panel and listed 9903.05.55 at 10% under potential duties, outside the total, because the forced-labor duty does not apply to Mexican goods entered free under USMCA. The total kept the general rate, since whether a part qualifies depends on your rules-of-origin records; a Mexican part that does not qualify owes the 10% line as well. For more on how the layers combine, see how tariff stacking works. To model PO-line duty under sourcing scenarios before a part moves from China to Mexico, see choosing a tariff impact simulation and duty-cost platform.

Model the total cost to import goods into the United States by adding freight, duty, customs fees and domestic delivery to the product price.

Can Avalara Cross-Border put import duty on purchase orders?

Partly: the AvaTax Cross-Border page, read October 10, 2026, describes duty and import tax calculated in real time at checkout, with an Estimated mode for new transactions so you "don't miss a sale," and never mentions purchase orders, but Avalara's help center shows duty on purchase orders in two places [2][27]. Its Dynamics 365 Business Central connector added customs duty and import tax on "Purchase orders" and "Purchase invoices" in its January 27, 2026 release, with a setup article that asks for a ship-to country outside the U.S. And Avalara TradeHub, a portal for importers and procurement teams, takes POs straight from the ERP: "Your ERP pushes a new PO to Trade Hub" for classification. Its NetSuite release notes of December 18, 2025 describe new cross-border fields on sales transaction records [27].

The question matters because two teams want two different numbers. Finance sees AvaTax on the sales order, where tax is figured at the moment of sale. The trade team needs the duty on the purchase order line, weeks before the goods are entered, with each Chapter 99 line apart, so a buyer can see why a casting from China costs more than the same casting machined in Mexico. Avalara does list "1,400+ signed partner integrations" [2], so ask it to demo the flow on a real NetSuite or SAP purchase order before anything is switched on. This post is not about the general cross-border shipping data flow (carrier data, DDP vs DAP, returns); that is Cross-Border Shipping API.

How to put the duty on every PO line

The pattern that works is one duty call per PO line, written back field by field, and two pricing passes: once when the line is raised and again as the entry date gets close.

Duty on a PO line is priced twice: when the line is raised, and again before entryHow an ERP team can carry each Chapter 99 line from the PO to the broker
  1. PO line is raisedPart number, description, origin, value, expected entry date
  2. Duty call per lineDescription, origin and pour countries in; 10-digit code and each Chapter 99 line out
  3. PO line is pricedThe ERP applies the rates to the value and adds freight, insurance, MPF and HMF
  4. Re-price before entryAgain when the expected entry date moves or a rule changes
  5. Broker files the entryCBP sets the final duty at liquidation
  1. Key each call to the PO line. GingerControl's batch endpoint takes up to 120 items per call by default, each with your own item_id, and returns them in the order you sent them, each with its own status, ok or failed, so one part that cannot be classified does not fail the batch [1].
  2. Store layers, not a total. Keep the general rate and each Chapter 99 heading and rate in their own fields. When a rule changes, you can see which PO lines carry the heading it touches.
  3. Let the ERP do the money. The API returns rates; your system applies them to the customs value and adds freight, insurance and fees. MPF is 0.3464% of value, with a $34.58 minimum and $670.86 maximum per formal entry from October 1, 2026 [18], and HMF is 0.125% of the value of commercial cargo by vessel [19]. The free MPF and HMF calculator checks the math for one entry.
  4. Send the pour countries for metal parts. The API takes optional steel_pour_country and aluminum_pour_country inputs, because the Section 232 line depends on them [1].

If you want this to run across all three U.S. entities and the Mexico plant, rather than as code your team maintains, that is what GingerOS does: it watches new rules and changes in your ERP, PLM and supplier records, checks every SKU a change touches, records the reasoning for your approval, and writes approved results back to your ERP with an audit trail. Connections are set up per client: read-only, staged, with no master data migration. There are no pre-built connectors; each connection is built for your own systems. GingerOS for IT teams covers the security questions an integration lead asks first, and top customs duty estimation systems compares the options for company-wide duty estimation across entities.

Should a PO estimate use the PO date or the entry date?

The entry date: CBP's regulation says "the rates of duty applicable to merchandise shall be the rates in effect at time of entry" (19 CFR 141.69), so a PO priced months ahead has to be re-priced for the date the goods are expected to be entered [20].

2026 made the difference expensive. Section 122 covered only goods entered from February 24 through July 23, 2026, at 10% [12]. The forced-labor Section 301 applies to goods entered from July 24, 2026, with one exception that turns on a second date: goods loaded onto a vessel and in transit before July 24 and entered before July 28 were not subject to it [10]. Warehouse entries follow their own date, the withdrawal for consumption [20]. Here is one worked purchase order against the real cutovers: priced the day it was raised in June, it carried a 10% Section 122 line that was gone by entry and missed a 12.5% line that applied at entry.

A June purchase order for an August entry crossed the July 24 cutoverWorked example: one China-origin PO line, priced on the day it was raised; the cutover dates are real
  1. PO line raised and pricedThat day's layer set still includes Section 122 at 10%
  2. Last Section 122 entry dayThe surcharge ran through 12:01 a.m. EDT on July 24
  3. Forced-labor Section 301 startsChina 9903.05.31 at 12.5%; Mexico 9903.05.55 at 10% unless USMCA duty-free
  4. In-transit window closesGoods loaded before July 24 and entered before July 28 were not subject
  5. Goods enteredCBP applies the rates in effect at time of entry

Source: Federal Register: 91 FR 9339 (Section 122, February 25, 2026) and 91 FR 47318 (forced-labor Section 301, July 28, 2026); 19 CFR 141.69 (eCFR, read October 10, 2026)

Both errors in that June estimate came from pricing the right code on the wrong date.

Quotable insight: An ERP that prices duty when the purchase order is raised has keyed it to the wrong date: the PO date, when the price was agreed, not the expected entry date, when CBP fixes the rate. A PO line's duty can be trusted only until the first rule whose effective date falls between today and that entry date. For a team holding 1,800 open lines a month, every new notice is a list of PO lines to re-price.

The API's request fields are the description, the origin and the optional pour countries, with no date among them [1]: it returns the layers in force when you call it. A PO estimate from the API is therefore only as good as the day it was priced, so schedule a fresh call for each open PO line as its expected entry date nears and after every rule change. When you need the duty for a specific entry date, our Tariff Calculator takes the entry date and the date of loading. GingerOS, covered above, rechecks every SKU a rule change touches. The free Policy Briefings send one email when a U.S. trade rule changes, which is a workable trigger for the fresh call. For the background on the expired surcharge, see Section 122 tariffs explained, and for the 60 economies under the new duty, the Section 301 forced-labor investigations.

What are the alternatives to AvaTax Cross-Border for U.S. import duty?

There are four kinds: a U.S. import duty API such as GingerControl's, a tariff-content provider such as Descartes, a checkout landed-cost API such as Zonos or Hurricane Commerce, and the trade module of your ERP, such as SAP GTS or Oracle GTM. Each one is honest about a different job.

GingerControl Classification + Tariff Calculation API

What it is: a REST API that turns a part description and its origin into a 10-digit HTS code and every U.S. duty layer, as JSON [1]. Price: enterprise customers only, no published price, it starts with a call. What it does well: each Chapter 99 line per item, split-code goods as components, pour-country inputs for Section 232. Where its use case ends: U.S. imports only. It does not calculate sales tax, VAT or GST, checkout DDP, non-U.S. duty or AD/CVD, and it does not file entries. Best for: an ERP or quoting system that needs the U.S. duty on each import line. The full comparison with AvaTax Cross-Border is in the next section.

Avalara AvaTax Cross-Border

What it is: duty and import tax calculated in real time, with an Estimated mode for new transactions without an HS code, and codes from Tariff Code Classification [2][4]. Price: quote-based. What it does well: one vendor with the AvaTax sales tax you already run, 1,400+ signed partner integrations, classification across "more than 180 countries," Section 232 inputs by material, and MCP servers for AI agents. Where its use case ends: its product page describes transactions at the point of sale; purchase-order duty appears in its help center for one ERP connector and for Avalara TradeHub, and we found no page that says how Section 301 lines come back [27]. Best for: AvaTax customers who sell cross-border and want checkout duty from the same vendor.

Descartes (CustomsInfo, classification and duty)

What it is: "AI-assisted HTS classification software" with an up-to-date database of duties, tariffs, rulings and regulations "from 175+ countries," and CustomsInfo, whose own site describes "comprehensive trade research across 190+ countries" with HTS search and a landed cost calculator [7]. Price: not published. What it does well: breadth of tariff content, and CustomsInfo's site lists SAP GTS and Oracle GTM among its solutions. Best for: teams that need tariff content for many import countries, not only the U.S., and brokers and forwarders who license that content.

Zonos

What it is: landed cost at checkout, guaranteed, with GraphQL and a REST landed-cost call, in "217 countries and territories" per its docs [5]. Price: "2 USD and 10% of duties, taxes, and other import fees" per guaranteed order, typically paid by the shopper; Classify plans from US$500, $1,000 and $1,250 a month as starting prices, with 1,000 free classifications, or 10,000 a year for Zonos Platform users. Accuracy, stated two ways: its Classify docs say "over 90% accuracy out of the box," and its product page says "Under 1% of declarations get reclassified, a 99%+ accuracy rate," where accuracy means the broker clearing the shipment lands on the same HS code. Best for: brands selling to shoppers abroad. We compare its API with ours in Zonos API vs GingerControl API.

If you choose a direct API rather than a hosted checkout integration, use the REST integration workflow to plan request mapping, batch behavior and error handling.

Hurricane Commerce (Kona API)

What it is: an API for "HS Classification for 10 digits and beyond" plus duty and tax calculation, reachable "via direct API integration ... or through the Hurricane Portal" [6]. Price: not public, "Book a Demo." Its page says Hurricane has been "proven to be the most accurate time and time again in side-by-side tests," with no test data on the page. Best for: teams that want duty and tax by API or through a portal.

SAP GTS and Oracle GTM (inside the ERP)

These are trade-management systems rather than duty APIs, so they are not scored above. SAP's help documentation for GTS Customs Management, read October 10, 2026, says "you can enter the customs duty rates in the system manually or upload them with XML" [21]. Oracle's Landed Cost Simulator documentation, dated December 1, 2025, says it can "call an external tax engine to get estimated customs value, duty and taxes" [22]. Either way the duty rates come from outside the module: typed in, uploaded, or called from another engine. For a group that wants import and export filing and screening across its business units inside SAP or Oracle, these suites are the honest pick.

If your volume is parcels rather than PO lines, the per-call APIs from Easyship, Dutify and SimplyDuty are compared in duty and tax API pricing compared, the Easyship duty calculator API alternative and SimplyDuty vs GingerControl.

Compare industries that use HTS classification APIs to choose a workflow that resembles your catalog size and operating model.

How does the GingerControl API differ from AvaTax Cross-Border?

GingerControl's Classification + Tariff Calculation API is built for the U.S. import side of the PO line, returning a 10-digit HTS code with every Section 301, Section 232 and other Chapter 99 line as its own entry, while AvaTax Cross-Border is built to calculate duty and import tax on transactions next to AvaTax sales tax.

What an ERP team asksGingerControl Classification + Tariff Calculation APIAvalara AvaTax Cross-Border (its pages, October 10, 2026)
What goes inPart description and country of origin; optional steel and aluminum pour countriesHS-6 or HS-10 classifications or item descriptions, listing details, destination countries
Does it need an HS code firstNo, it returns the 10-digit codeYes for real-time calculation; Estimated mode for new transactions
What comes out10-digit HTS code, general and special rates, one list per duty layer, each entry a Chapter 99 heading and rateCustoms duties and import taxes, in real time
Section 301 and 232 linesEach heading on its own line; an empty list means that layer does not applySection 232 duty by material in its help center; Section 301 not named
Goods dutied part by part (Chapter 91 watches)An 8-digit parent code and a components array, each part with its own 10-digit code and tariffsNot stated
Batch120 items per call by default, sized to your throughput; results in your order, each under your item_idNot stated on the pages read
DatesNo date input; returns the layers in force when you call itEstimated mode covers new transactions; backdated ones need an accurate HS-10 code
LimitsPer-key rate limit and item quota; 429 with Retry-After when exceededNot stated on the pages read
Sales tax, VAT, checkoutNot coveredAvaTax sales tax; duty and import tax on cross-border transactions
CountriesU.S. imports onlyClassification in more than 180 countries; the Cross-Border page states no count
PriceEnterprise customers only, starts with a call, no published priceNot public, form or demo

Sources: GingerControl API reference [1]; Avalara pages and help center [2][3][4][27].

Bottom line: For an ERP team sending about 1,800 import PO lines a month as part descriptions, the difference is the input: GingerControl's API needs no HS code first and returns each Chapter 99 line under your item_id, while AvaTax Cross-Border needs an HS code for real-time duty, with Estimated mode for new transactions without one.

A batch request from your ERP looks like this. It is an illustration of the request format, with your own PO line numbers as item_id; the codes and duty lines come back in the response under the same ids.

{
  "items": [
    {
      "item_id": "PO-4471-010",
      "description": "Gray iron casting, machined pump housing, unpainted",
      "country_of_origin": "CN"
    },
    {
      "item_id": "PO-4471-020",
      "description": "Steel mounting bracket, stamped and zinc plated",
      "country_of_origin": "MX",
      "extra": { "steel_pour_country": "MX" }
    },
    {
      "item_id": "PO-4472-010",
      "description": "Aluminum die-cast motor end cover",
      "country_of_origin": "KR",
      "extra": { "aluminum_pour_country": "KR" }
    }
  ]
}

The API classifies with the Quick line of our Classification Researcher. On GingerControl's own internal test of 1,000+ products, the Quick classifier the API uses matched 99.86% of codes at the 10-digit level; that is our test, not an independent benchmark. GingerControl's Classification Researcher follows the reasoning a licensed customs broker uses: GRI analysis, Section and Chapter Note review, and CROSS ruling research. Its classifications are for general reference, educational, and planning purposes; before a code goes on an entry, your licensed customs broker reviews it. GingerControl is not a customs broker, does not file entries, and does not give legal advice.

The proof I point to is a broker, not a manufacturer. Before working with us, Jet Import Brokers, a U.S. customs broker, found that several well-known tariff tools gave wrong or incomplete rates: conditional exemptions were missing and watches returned error codes. With the system we built for Jet, the work at every policy update went from one to two days per client to about 30 minutes for every product of every client [23]. Jet found us by asking ChatGPT.

What GingerControl does not do, plainly: U.S. sales tax, VAT or GST, checkout DDP, duty for countries other than the U.S., AD/CVD calculation, entry filing, or export control classification by API. For those jobs, Avalara, Zonos and your broker stay in the picture. Where an import also owes VAT or GST, a wrong code changes the duty and that tax on the same line, which software for HS code classification and VAT calculations covers.

By the numbers: the U.S. import stack in October 2026

NumberWhat it measuresSource
10%Section 122 surcharge, only for goods entered February 24 to July 23, 2026Proclamation 11012 [12]
$31.06 billionSection 122 duty CBP assessed, FY2026, as of July 5, 2026CBP trade statistics [24]
$21.56 billionChina Section 301 duty CBP assessed, FY2026, as of July 5, 2026 (FY2025: $35.6 billion)CBP trade statistics [24]
60Section 301 forced-labor investigations with duties from July 24, 2026: 10% on 17 economies, 12.5% on 38 others including China, top-ups for 591 FR 47318 [10]
50%Section 232 steel and aluminum rate in Annex I-A, on full customs value since April 6, 2026Proclamation 11021 [11]
85%Share of U.S.-melted metal by weight that counts as entirely U.S. for the 10% tier, from June 8, 2026Proclamation 11032 [16]
$34.58 to $670.86MPF minimum and maximum per formal entry at 0.3464%, from October 1, 2026CBP Dec. 26-14 [18]
3HTS revisions in under four weeks: Revision 19 (September 15), 20 (September 28) and 21 (in effect October 9, 2026)USITC [25]
178China Section 301 product exclusions, extended through November 9, 2026USTR [26]
$216.7 billionDuty, taxes and fees CBP collected in FY2025, the most recent full fiscal year (as of July 27, 2026)CBP trade statistics [24]

Three HTS revisions in under four weeks is the number I would put in front of an integration lead. It is why a duty figure stored on a PO line needs a date next to it.

Which tool fits which job for an ERP team?

It splits by job: AvaTax Cross-Border for duty and import tax next to the AvaTax sales tax you already run, Zonos for a guaranteed landed cost at checkout, and GingerControl's API for every U.S. Chapter 99 line on each import PO line.

SituationBest choiceWhy
You run AvaTax for U.S. sales tax and need duty and import tax at checkoutAvalara AvaTax Cross-BorderSame vendor as your sales tax; duty and import tax calculated in real time on transactions
You sell direct to shoppers in many countries and want the landed cost guaranteedZonosUS$2 + 10% per order guarantee, 217 countries and territories in its docs
You need every U.S. Chapter 99 line on each import PO line, from a part descriptionGingerControl Classification + Tariff Calculation APIA 10-digit code and each duty layer per item, 120 items per call by default, results under your item_id
You want every PO line rechecked when a rule, part or supplier changes, with approved results written back to the ERPGingerOSWatches rules and ERP, PLM and supplier changes; connections set up per client, read-only, staged
You need tariff content for many import countriesDescartes CustomsInfoTrade research across 190+ countries, per its site
You run SAP or Oracle and want filing and screening inside the ERP across business unitsSAP GTS or Oracle GTMNative to the ERP; they still need a source for each duty rate
You price one HTS code at a time across origins, without an APIGingerControl Tariff Calculator in GingerLiteThe GingerLite app is $150 a month for 300 credits, with top-ups if you run out

The bottom line

  • Keep Avalara for U.S. sales tax, and for checkout duty and import tax if you sell cross-border. Its bundling with AvaTax is a real advantage there, and GingerControl does not do that job.
  • Pick Zonos if the duty has to be guaranteed to a shopper at checkout.
  • Pick SAP GTS or Oracle GTM if trade compliance must live inside the ERP across business units, and plan who supplies the rates.
  • Pick GingerControl's API if the job is the U.S. import side of the PO line: every Chapter 99 line per part, re-priced with a fresh call as the entry date nears, for the trade team and the broker to check.
  • Pick GingerOS if the problem is the whole process across entities and plants, not one call.

Putting every Chapter 99 line on your PO lines

Your finance team is right that AvaTax should stay; the duty your trade team needs on 1,800 PO lines a month is a different job. GingerControl's Classification + Tariff Calculation API returns each part's 10-digit HTS code and every Section 301, Section 232 and other Chapter 99 line, under your own PO line ids. Get every Chapter 99 line on your PO lines through the API

If you would rather have the rechecks run for you across all three U.S. entities and the Mexico plant, GingerOS, GingerControl's AI trade compliance platform, rechecks every SKU a rule, part or supplier change touches and writes approved results back to your ERP. It starts with Prototype Week: one call, then a clickable prototype of your own flow in three days. See how GingerOS rechecks your PO lines

References

  1. GingerControl, Classification + Tariff Calculation API reference
    Data cited: Request fields (description, country_of_origin, optional steel_pour_country and aluminum_pour_country); response fields (10-digit HTS code, general and special rates, one list per duty layer with Chapter 99 code and rate, components for split-code goods); batch of 120 items, item_id order, per-item status, summary; 429 with Retry-After
    Source: Classification + Tariff Calculation API reference
  2. Avalara, AvaTax Cross-Border product page
    Data cited: "calculates and estimates customs duties and import taxes in real time"; Avalara Cross-Border Estimated and its new-transaction limit; HS code FAQ; inputs; "highly accurate, regularly updated tax rates"; no public price and the contact form; sales tax plans "starting at $69/mo" in its navigation; "1,400+ signed partner integrations"; MCP FAQ; no mention on this page of Section 301, Section 232, Chapter 99 or purchase orders
    Published: No date on the page; read October 10, 2026
  3. Avalara, AvaTax Cross-Border developer overview
    Data cited: "AvaTax Cross-Border calculates duties, import taxes, and landed cost for international transactions"; "Avalara APIs provide REST interfaces"; "AvaTax 90 days free trial" link; customs product family on the developer portal; no mention of Section 301 or Chapter 99
    Published: No date on the page; read October 10, 2026
  4. Avalara, Tariff Code Classification page
    Data cited: "more than 180 countries"; "a team of 260+ classifiers, plus proprietary AI"; "mandatory universal 6-digit or country-specific 10-digit HTS codes"; no accuracy percentage; no public price; 3ce.com redirects to this page
    Published: No date on the page; read October 10, 2026
  5. Zonos, Landed Cost pricing, Landed Cost docs, Classify docs, Classify product page and Classify plans page
    Data cited: US$2 and 10% per order; "217 countries and territories"; GraphQL and REST landed-cost calls; Classify "over 90% accuracy out of the box" (docs) and "Under 1% of declarations get reclassified, a 99%+ accuracy rate" (product page) with its definition; Standard US$500, Advanced US$1,000, Premium US$1,250 monthly starting prices; 1,000 free classifications, or 10,000 a year for Platform users
    Published: No date on the pages; read October 10, 2026
  6. Hurricane Commerce, Kona API and duty and tax calculation pages
    Data cited: "HS Classification for 10 digits and beyond"; API or Hurricane Portal access; "Book a Demo"; accuracy claim with no test data
    Published: Page metadata dated September 25, 2026; read October 10, 2026
  7. Descartes, Product classification and duty determination page, and CustomsInfo home page
    Data cited: "AI-assisted HTS classification software" with data "from 175+ countries"; CustomsInfo "across 190+ countries" with HTS search and a landed cost calculator; SAP GTS and Oracle GTM in its solutions menu; no public price
    Published: No date on the pages; read October 10, 2026
  8. U.S. Customs and Border Protection, CSMS #69326983, Section 301 forced-labor duties
    Data cited: Headings 9903.05.20 to .84 (China .31, Mexico .55, Korea .70 and .71); exemptions 9903.05.90 (Section 232 articles) and 9903.05.94 (USMCA goods of Mexico entered free); filing order, Section 301 before Section 232, Chapter 1 to 97 code last
    Source: CBP CSMS #69326983
    Published: July 23, 2026
  9. U.S. International Trade Commission, Harmonized Tariff Schedule, Chapter 99 headings 9903.88 and 9903.91
    Data cited: 9903.88.01, .02 and .03 at plus 25%; 9903.88.15 at plus 7.5%; 9903.91.01 to .03 (from September 27, 2024), .05 and .11 (from January 1, 2025) and .06 to .08 (from January 1, 2026) at plus 25%, 50% or 100% for products of China in U.S. note 31; 6402.99.90 at a 20% general rate and listed in U.S. note 20(s)(i) for 9903.88.15
    Source: USITC HTS search, 9903.88; USITC HTS search, 9903.91
    Published: 2026 HTS Revision 21; read October 10, 2026
  10. Office of the U.S. Trade Representative, Notice of actions in Section 301 investigations, 91 FR 47318
    Data cited: 60 investigations; 10% on 17 economies including Mexico; 12.5% on all other investigated economies including China; top-up to 12.5% combined for Japan, Korea and Switzerland and 10% for the EU and Taiwan; entries from July 24, 2026; in-transit exception for goods loaded before July 24 and entered before July 28
    Source: 91 FR 47318
    Published: July 28, 2026
  11. Proclamation 11021, Strengthening actions taken to adjust imports of aluminum, steel, and copper
    Data cited: Duty on the full customs value from April 6, 2026; 50% Annex I-A, 25% Annex I-B, 10% for U.S.-melted and poured metal
    Source: Proclamation 11021, Federal Register
    Published: April 9, 2026
  12. Proclamation 11012, Imposing a temporary import surcharge (Section 122), 91 FR 9339
    Data cited: 10% surcharge on goods entered from February 24, 2026 through 12:01 a.m. EDT July 24, 2026; heading 9903.03.01, which the USITC HTS notes "expired at the close of July 23, 2026"
    Source: Proclamation 11012, Federal Register; USITC HTS Chapter 99, Revision 21
    Published: February 25, 2026
  13. Supreme Court of the United States, Learning Resources, Inc. v. Trump, No. 24-1287
    Data cited: Decided February 20, 2026; IEEPA does not authorize the President to impose tariffs
    Source: Learning Resources, Inc. v. Trump, slip opinion
    Published: February 20, 2026
  14. U.S. Customs and Border Protection, CSMS #67834313, end of IEEPA duty collection
    Data cited: IEEPA duties no longer collected for goods entered on or after 12:00 a.m. ET February 24, 2026
    Source: CBP CSMS #67834313
    Published: February 22, 2026
  15. U.S. Customs and Border Protection, CSMS #68253075, Section 232 metal content and reporting
    Data cited: Melt and pour and smelt and cast reporting on every entry; goods outside Chapters 72, 73, 74 and 76 with less than 15% metal by weight not subject
    Source: CBP CSMS #68253075
    Published: April 3, 2026; read October 10, 2026
  16. Proclamation 11032, Further adjusting the tariff regimes for imports of aluminum, steel, and copper
    Data cited: 85% by weight for the U.S.-melted tier from June 8, 2026; Annex I-C tier at 25%, or 15% combined for Japan, Korea and other partners, and for USMCA goods 25% on non-U.S. content with a 15% floor, through December 31, 2027
    Source: Proclamation 11032, Federal Register
    Published: June 4, 2026
  17. GingerControl, Tariff Calculator production run
    Data cited: HTS 6402.99.9005, $25,000, ocean, loaded October 1 and entered October 6, 2026; China 20% base plus 9903.88.15 at 7.5% ($1,875) plus 9903.05.31 at 12.5% ($3,125), fees $117.85; Mexico USMCA duty-free shown, 9903.05.55 at 10% under potential duties
    Source: GingerControl Tariff Calculator
    Published: Run on October 6, 2026
  18. U.S. Customs and Border Protection, CBP Dec. 26-14, Customs user fees for fiscal year 2027, 91 FR 48398
    Data cited: MPF 0.3464%, minimum $34.58, maximum $670.86, from October 1, 2026
    Source: 91 FR 48398
    Published: July 31, 2026
  19. Electronic Code of Federal Regulations, 19 CFR 24.24, Harbor maintenance fee
    Data cited: 0.125% of the value of commercial cargo loaded on or unloaded from a commercial vessel
    Source: 19 CFR 24.24
    Published: Read October 10, 2026
  20. Electronic Code of Federal Regulations, 19 CFR 141.69, Applicable rates of duty
    Data cited: "The rates of duty applicable to merchandise shall be the rates in effect at time of entry"; warehouse entries at the rates in effect at withdrawal for consumption
    Source: 19 CFR 141.69
    Published: Read October 10, 2026
  21. SAP, SAP Global Trade Services 11.0 help, Maintaining Customs Duty Rates
    Data cited: "With Customs Management, you can enter the customs duty rates in the system manually or upload them with XML"
    Published: SAP Global Trade Services 11.0 SP26 documentation; read October 10, 2026
  22. Oracle, Global Trade Management Landed Cost Simulator documentation (release 26A)
    Data cited: The simulator can "call an external tax engine to get estimated customs value, duty and taxes"
    Published: December 1, 2025; read October 10, 2026
  23. GingerControl, Jet Import Brokers case study
    Data cited: One to two days per client at every policy update before, about 30 minutes for every product of every client after; several tariff tools gave wrong or incomplete rates; Jet found GingerControl by asking ChatGPT
    Source: Jet Import Brokers case study
    Published: October 9, 2026
  24. U.S. Customs and Border Protection, Trade statistics
    Data cited: Section 122 $31,060,000,000 and China Section 301 $21,560,000,000 for FY2026 (as of July 5, 2026), China Section 301 $35,600,000,000 for FY2025; total duty, taxes and fees $216,711,007,541 for FY2025 (as of July 27, 2026)
    Source: CBP trade statistics
    Published: Page last modified October 2, 2026
  25. U.S. International Trade Commission, HTS release list
    Data cited: 2026 HTS Revision 21, in effect from October 9, 2026; Revision 20 from September 28 and Revision 19 from September 15, 2026
    Source: USITC HTS release list
    Published: Read October 10, 2026
  26. Office of the U.S. Trade Representative, Notice of product exclusion extensions, China Section 301
    Data cited: 178 exclusions extended through 11:59 p.m. EDT November 9, 2026
    Source: USTR exclusion extensions, Federal Register
    Published: December 1, 2025
  27. Avalara, help center (Avalara Knowledge Center) articles
    Data cited: "Customs duties: Requires AvaTax Cross-Border (sold separately)" (Add VAT, GST, or customs duties for non-US countries in Avalara, updated December 24, 2025); "Material-specific Section 232 support for Cross-Border customers" with Section232MetalPercent and MetalCoo inputs and "Avalara calculates Section 232 duty separately for each material percentage" (AvaTax Release Note 26.3.1.0, March 2026); a "DutyRateBreakup" with one Chapter 99 code (Example of calculating duties on cross-border postal shipments, updated December 28, 2025); customs duty and import tax on "Purchase orders" and "Purchase invoices" (Avalara for Dynamics 365 Business Central Release 27.0.32.0v2, January 27, 2026), with a ship-to country outside the U.S. as a setup prerequisite (Set up cross-border for AP transactions, updated March 25, 2026); new cross-border fields on "sales transaction records" (Avalara for NetSuite Release 9.9, December 18, 2025); Avalara TradeHub for importers and procurement teams "before they ship, file entries, or approve purchase orders" (Avalara TradeHub overview, April 15, 2026) and "Your ERP pushes a new PO to Trade Hub" (Methods to create a classification worksheet, updated June 26, 2026); no article found naming Section 301 (help-center searches for "Section 301", "301", "9903.88" and "forced labor")
    Published: Dates as listed; read October 10, 2026

Questions people ask

Does the Avalara Cross-Border duty calculator include Section 301 on our China-origin castings?

Avalara's pages do not say. Its AvaTax Cross-Border page, read October 10, 2026, never mentions Section 301, and no help-center article we found does, though the help center documents Section 232 inputs by material. With about 1,800 import PO lines a month, ask Avalara to test one China casting and show the 9903.88 list duty and, unless it is a Section 232 article, the 9903.05.31 forced-labor duty as separate lines. Where they apply, both are among the Chapter 99 lines GingerControl's API returns.

For our China castings and Mexico steel parts, how do the MFN rate, Section 301 and Section 232 stack on one U.S. import line, and which Chapter 99 numbers go with them?

They add up on one line: the 10-digit code's MFN rate plus each additional duty under its own Chapter 99 heading, reported Section 301 first, Section 232 after and the 10-digit code last. For an ERP team mapping 9,000 SKUs, a List 3 part from China owes the MFN rate plus 9903.88.03 at 25% plus 9903.05.31 at 12.5%, while a Section 232 steel article owes 232 duty on full value and is exempt from 9903.05.31. IEEPA tariffs, struck down February 20, 2026, are not collected on entries from February 24.

Is AvaTax Cross-Border part of the AvaTax we already run for sales tax, or a separate product?

It is a separate product under the AvaTax name. Avalara publishes sales tax plans from $69 a month, while its AvaTax Cross-Border page, read October 10, 2026, shows no price and asks you to complete a form to reach a global trade compliance expert. For a finance team already running AvaTax across three U.S. entities, that means a separate quote and switch-on, with the real advantage of one vendor for sales tax and checkout duty.

Many of our 9,000 SKUs lack a 10-digit code: which Avalara product assigns the HTS code, AvaTax Cross-Border or Tariff Code Classification (the former 3CE)?

Tariff Code Classification assigns it, and AvaTax Cross-Border uses it. The Cross-Border page asks for HS-6 or HS-10 classifications or item descriptions and says real-time duty needs the code. Tariff Code Classification, where 3ce.com now redirects, runs from an AI tool that returns 6-digit or country-specific 10-digit codes to a managed tier with 260+ classifiers plus AI, with no published accuracy percentage. For a 9,000-SKU catalog, price both, or use GingerControl's API, which returns the code and its duty lines in one call.

Can Avalara Cross-Border put import duty on purchase orders in NetSuite or SAP, or only on sales orders at checkout?

In some connectors, yes. Avalara's help center, read October 10, 2026, says its Dynamics 365 Business Central connector calculates customs duty and import tax on purchase orders and purchase invoices (January 27, 2026 release; setup asks for a ship-to country outside the U.S.), and its TradeHub portal takes POs pushed from your ERP for classification. For 1,800 import PO lines a month in NetSuite or SAP, ask for a demo on a real purchase order. GingerControl's API returns each line's result under your own item_id.

How do we get an estimated landed cost, with each duty line, onto every PO line in the ERP?

Call a duty API for each PO line with the part description and origin, write each Chapter 99 line to its own field, and let the ERP add freight, insurance and fees. MPF is 0.3464% of value, $34.58 to $670.86 per formal entry from October 1, 2026, and HMF is 0.125% on ocean cargo. For 1,800 PO lines a month, GingerControl's Classification + Tariff Calculation API takes 120 items per call by default.

Our PO estimates still carried Section 122 after it ended on July 24, 2026: which date should the duty API price, the PO date or the entry date?

The entry date. CBP applies the rates in effect at the time of entry under 19 CFR 141.69, and Section 122 covered only goods entered February 24 to July 23, 2026, so a PO estimate is only as good as the day it was priced. Re-price each of 1,800 monthly PO lines as its entry date nears: GingerControl's API returns the layers in force when you call it, and its Tariff Calculator takes a specific entry date and loading date.

Is Avalara Cross-Border accurate enough to use for the duty on our U.S. entries?

Avalara publishes no accuracy percentage or guarantee for Cross-Border; its page says highly accurate, regularly updated tax rates. Any engine's number is an estimate: your licensed broker files the entry and CBP sets the final duty at liquidation. For a manufacturer importing through three U.S. entities, test it on 20 to 30 of your own China, Mexico and Korea lines against past entry summaries. GingerControl's numbers are for planning and quoting in the same way.

What are the alternatives to Avalara AvaTax Cross-Border when we need U.S. import duty, not sales tax?

Four kinds: a U.S. import duty API such as GingerControl's Classification + Tariff Calculation API, which returns split-code goods as components and each Chapter 99 line per item; a tariff-content provider such as Descartes; checkout landed-cost APIs such as Zonos or Hurricane Commerce; and your ERP's trade module, such as SAP GTS, where duty rates are entered by hand or uploaded as XML. For a manufacturer pricing 1,800 import PO lines a month, keep AvaTax for sales tax either way.

Your next step

Shortlisting AI for trade compliance?

Hand this to GingerOS.

Try the Classification Researcher on one product See GingerOS run on your own SKUs

Pick a 30-minute slot on the next page with Chen Cui, our CEO. Bring one notice or one SKU list (an ERP export, a spreadsheet or an email will do) and see what GingerOS does with it.

Reviewed by Michael Weick, LCB / CCS
Customs compliance manager with 42 years of experience (ex Subaru of America, Merck, and Motorola).

More in AI & Technology

Our Risk-Free Promise

Full refund.

If you’re not satisfied before MVP acceptance, get a full refund of your deposit.

Click Me!

See if you qualify