TL;DR
- Trade compliance APIs sit upstream of ABI filing. They can support research, calculation, and review; CATAIR-certified ABI software still files the entry summary in ACE.
- Four industry integration points cover much of the workflow: HTS research or classification, duty calculation, AD/CVD scope match, and post-summary monitoring and correction. They are general workflow categories, not a claim that Tandom currently automates all four end to end.
- Tandom's current public API supports HTS research, duty calculation, AD/CVD screening, PGA and Chapter 99 signals, and regulatory-data status. Its MCP endpoint exposes a reviewed subset of 13 read-only tools for compatible AI workflows.
- Reasonable care under 19 USC 1484(a) does not transfer to the API vendor. The importer of record retains the legal obligation, qualified reviewers still verify the classification, and the entry summary plus a persisted calculation snapshot is the system of record, not the live API.
- Browse the current public surface and fair-use access model at tandom.ai/api.
The four integration points
A US entry summary in 2026 stacks more layers than the system the broker bought in 2018 was designed for. Section 232 metals at 50%, Section 301 China at 7.5% to 25% across four lists, the Section 122 surcharge that replaced IEEPA on February 24, 2026, ~736 active AD/CVD cases, and the FY26 MPF cap all collide on a single line. Hand-keying that math invites errors. APIs move it to a deterministic, versioned engine.
Across importer, sourcing, and broker systems, there are four natural integration points:
- Pre-entry HTS research or classification. Some industry products classify descriptions. Tandom's current public endpoints search existing HTS rows and retrieve hierarchy and legal-note context for a human-reviewed candidate code.
- Pre-entry duty calculation. The confirmed HTS code, country, value, and entry date go in. The full landed-duty stack comes back with every Section 232/301/122 layer, MPF, HMF, and any Chapter 99 sources cited.
- Pre-entry AD/CVD scope match. The HTS code, country, manufacturer, and entry date go in. Any AD or CVD orders whose scope reaches the shipment come back, with the rate, the FR citation, and a match-type pill (exact / heading / advisory).
- Post-summary monitoring and correction. A broader workflow can watch CBP updates, identify affected entry cohorts, and prepare correction work. Tandom does not currently expose a public monitoring or PSC-drafting endpoint.
The first three sit in front of the entry summary going to ACE; the fourth sits behind it. None replaces ABI filing software or the importer's reasonable-care process. The sections below distinguish the general workflow from the endpoints Tandom actually exposes.
Pre-entry: HTS research APIs
Some vendors expose classification endpoints that turn product prose into ranked codes. Tandom does not currently expose that capability on its public API. GET /v1/hts/search searches existing tariff rows by text or code so a team can gather candidates for human classification review.
A typical request looks like this:
curl -sS \ "https://api.tandom.ai/v1/hts/search?q=cap+screws+steel&limit=5" \ -H "Authorization: Bearer $TANDOM_API_KEY"
The response carries a results[] array of matching tariff rows. Use GET /v1/hts/notes for applicable legal-note context and GET /v1/hts/hierarchy to walk the hierarchy around a candidate code. The public API does not expose the internal Chapter 99 expansion jobs.
Use search results as research candidates, not confidence-scored classifications. Preserve the product facts, sources, legal notes, alternatives considered, and human decision. Re-fetch current duty data when the reviewed code is ready for a scenario calculation.
Pre-entry: duty calculation API
The duty calculation API takes one HTS line plus its inputs and returns the full landed-duty stack with every layer cited. The Tandom endpoint is GET /v1/duty/calculate. A real call for a Cap-screws line shipping from China at $50,000 declared value, May 2026 entry date, 100% steel content, Chinese melt-and-pour, looks like this:
curl -sS \ "https://api.tandom.ai/v1/duty/calculate?\ hts=7318.15.80.66&origin=CN&value=50000&date=2026-05-01&\ steel=100&meltpour=CN" \ -H "Authorization: Bearer $TANDOM_API_KEY"
The response carries a dutyInfo object with the parsed numbers a broker actually files against:
{
"dutyInfo": {
"htsCode": "7318.15.80.66",
"description": "Cap screws",
"declaredValue": 50000,
"generalRate": "8.5%",
"section232": "50%",
"section232ScopeMatch": { "steel": true, "aluminum": false },
"section301": "25%",
"estimatedTotalDuty": "83.5% ($41,750.00)",
"totalDutyAmount": 41750,
"mfnAmount": 4250,
"chapter99Sources": [
{ "code": "9903.03.01", "authority": "Section 122 Surcharge",
"rate": 0, "amount": 0, "aceReportingOrder": 1 },
{ "code": "9903.88.03", "authority": "Section 301 List 3",
"rate": 25, "amount": 12500, "aceReportingOrder": 2 },
{ "code": "9903.82.02", "authority": "section_232",
"rate": 50, "amount": 25000, "material": "steel",
"aceReportingOrder": 3 }
],
"adcvdCases": [
{ "caseNumber": "A-570-932", "orderType": "AD",
"matchType": "heading", "advisory": true,
"headingMatched": "7318" }
],
"mpf": { "rate": 0.003464, "amount": 173.20 },
"hmf": { "rate": 0.00125, "amount": 62.50, "applicable": true },
"totalLandedDuty": 41985.70,
"effectiveRate": 83.5
}
}The fields a broker cares about: chapter99Sources enumerates every Chapter 99 code in ACE reporting order so the line can be filed top to bottom; adcvdCases surfaces any AD or CVD order that touches the line by heading; matchedExclusions (omitted above for brevity) flags Chapter 99 exclusions the shipment may qualify for; warnings calls out missing inputs (a steel line with no melt-and-pour country, an aluminum line where smelt-and-cast is unknown so the 200% rate applies by default).
Persist the entire response with the entry record. If CBP audits later, you can reproduce exactly what the broker filed against, including the data version of the underlying rate tables.
Pre-entry: AD/CVD scope match API
AD/CVD is the layer that turns an 8.5% duty into 83.5% with a country-wide rate, or worse, a punitive country-wide rate that applies because the manufacturer is not on the order's exempt list. A scope match API surfaces those orders before the entry summary goes to ACE.
The Tandom endpoint is GET /v1/adcvd/check:
curl -sS \ "https://api.tandom.ai/v1/adcvd/check?\ htsCode=7318.15.80.66&country=CN&entryDate=2026-05-01&\ productDescription=alloy%20steel%20cap%20screws&\ manufacturer=Acme%20Steel%20Co&exporter=Acme%20Trading" \ -H "Authorization: Bearer $TANDOM_API_KEY"
The response carries a matches[] array. Each match includes the case number (A-XXX-XXX or C-XXX-XXX), the order type (AD or CVD), available rate context, structured scope-review signals, source citations, and a matchType value such as heading, heading_partial, or one of the named advisory variants.
The advisory flag is load-bearing. AD/CVD orders list HTS codes in the FR notice for indexing convenience, but scope is always described in product terms. A product can fall inside scope even if its HTS code is not listed, and outside scope even if it is. The broker still has to read the FR notice. The API gives them the case numbers and structured review signals to triage which scope texts to read first.
For full case-by-case analysis (rate history, lifecycle, companion-case rates, all FR document chains), call POST /v1/adcvd/report. That one accepts structured product facts and generates a fuller analysis. It is part of the free API with fair-use and operation-specific safeguards, but it is not a public MCP tool because the MCP surface is restricted to reviewed read-only operations.
Post-summary: corrections workflow
Most broker workflow APIs talk about the path into ACE. The path out of ACE matters too. CBP issues CSMS messages frequently that retroactively change Chapter 99 rates, suspend liquidation, or issue refund instructions. A Post Summary Correction (PSC) under 19 CFR 174 within 300 days of entry is how the importer recovers duties (or pays the difference) without filing a protest.
A correction-drafting workflow integrates two API calls:
- Watch CSMS feed. Subscribe to CBP's CSMS bulletin RSS or poll an aggregator. When a CSMS issues a rate change tied to a Chapter 99 code, scan your last 300 days of entries for any line that filed against that code.
- Re-run the calculator with the same HTS, country, value, and entry date inputs against the new rate. The original snapshot you persisted at entry-prep time (see § Pre-entry: duty calculation API above) is the input template.
The delta becomes an input to the PSC review. Tandom does not expose a dedicated PSC drafting endpoint; the building blocks are /v1/duty/calculate plus the original calculation snapshot, current CBP guidance, human eligibility review, and your ABI vendor's PSC workflow. For multiple lines, call the public calculation endpoint per scenario and respect its returned rate-limit metadata.
Worked example
The 50-broker mid-market firm files 800 entries a day. One of them is a $50,000 line of Cap screws (HTS 7318.15.80.66) shipping from China, May 1, 2026 entry date, 100% steel content, melt-and-pour in China. The example uses Tandom's public HTS, duty, and AD/CVD endpoints, then shows a separate post-summary monitoring step that must be implemented outside Tandom.
1. Research a candidate code
The broker's entry-prep system pulls the description cap screws, hex socket, alloy steel from the commercial invoice. It calls /v1/hts/search?q=cap+screws+steel&limit=5. One matching result is 7318.15.80.66 with description "Cap screws" and general rate 8.5%. A qualified reviewer confirms the code against the merchandise and records the classification rationale before continuing.
2. Calculate the duty
The system calls /v1/duty/calculate with the confirmed code, declared value $50,000, origin CN, entry date 2026-05-01, steel 100, meltpour CN. The response is rendered in the same visual format as the live calculator, so the broker recognizes it from the Tandom Duty Calculator at tariffs.tandom.ai/calculator:
| 7318.15.80.66MFN base, Cap screws (Column 1 General) | MFN | 8.5% | $4,250.00 |
| 9903.88.03Section 301 List 3 (USTR Sept 2024 four-year review) | S301 | 25% | $12,500.00 |
| 9903.82.02Section 232 steel (Proclamation 10908) | S232 | 50% | $25,000.00 |
| 9903.03.01Section 122 Surcharge (does not stack on S232) | S122 | 0% | $0.00 |
| n/aMPF (19 CFR 24.23, within FY26 cap) | MPF | 0.3464% | $173.20 |
| n/aHMF (19 USC 4461, ocean only) | HMF | 0.125% | $62.50 |
| Total duty + fees (before AD/CVD scope check) | $41,985.70 | ||
That is the persisted snapshot. The broker files the line in ACE with 9903.88.03 (Section 301 List 3, $12,500), 9903.82.02 (Section 232 steel, $25,000), MFN 8.5% on the base ($4,250), MPF $173.20, and HMF $62.50. Total duties + fees: $41,985.70.
3. Check AD/CVD scope
The calculator response already flagged A-570-932 (Steel Threaded Rod from China) as a heading-level advisory match. The broker calls /v1/adcvd/check?htsCode=7318.15.80.66&country=CN&productDescription=alloy+steel+cap+screws&entryDate=2026-05-01 for a product-specific screen. In this dated example, the scope review signal is likely_out_of_scope with reasoning that the order's product scope is threaded rod and cap screws have a different commercial identity. The importer documents the returned signal and governing scope text for qualified review. If the analysis returns likely_in_scope or possibly_in_scope, the importer should escalate the FR scope and rate analysis before acting.
4. Watch for post-summary changes
In this hypothetical, on August 4, 2026, CBP issues a CSMS message revising the Section 122 surcharge under Proclamation 11012 (the post-IEEPA replacement). An external CSMS watcher pulls all entries from the last 300 days that filed against the affected Chapter 99 code, re-runs /v1/duty/calculate with the new rate and prepares a review queue for any line where the delta exceeds the firm's threshold. Tandom does not provide the watcher or draft the PSC. The Cap-screws line above is unaffected (S122 was already 0% on that line) but others in the cohort are.
MCP for AI-assisted import review
Model Context Protocol is an open standard from Anthropic that lets an AI assistant call external tools through a typed schema. The full specification lives at modelcontextprotocol.io/specification. Tandom's canonical remote endpoint is mcp.tandom.ai/mcp.
When an importer, sourcing team, or broker connects a compatible AI client to mcp.tandom.ai/mcp, the assistant can discover 13 reviewed, read-only tools. Ask "what is the duty stack on a 50-pallet steel cap-screw shipment from China entering May 1, 2026 at $50K?" and the client can call tandom_duty_calculate with the supplied facts, then organize the returned amounts, citations, assumptions, and warnings for review.
The public MCP catalog does not include product classification, document extraction, report generation, monitoring, form drafting, supplier discovery, or purchasing actions. It does not replace ABI software or qualified review. Direct clients authenticate with a Tandom Bearer key; hosted clients may use a supported OAuth flow.
Common pitfalls
Treating the API as the system of record
APIs return point-in-time data. Section 232 rates doubled in June 2025; Section 122 replaced IEEPA on February 24, 2026; CSMS messages routinely revise Chapter 99 details mid-quarter. The system of record is the entry summary plus the full calculation snapshot you persisted at filing time. If you only persist the inputs and re-fetch the rate at audit time, the rate may have changed. Persist the response.
Skipping the AD/CVD scope read on advisory matches
A heading-level advisory match means the AD/CVD order names the 4-digit heading but has not been confirmed for the specific 10-digit code. The broker still has to read the FR scope text. The API gives you the case number and an AI summary; it does not absolve reasonable care.
Auto-classifying high-value lines without review
Reasonable care under 19 USC 1484(a) requires the importer of record to verify the classification. Classification products are a general industry category, but Tandom's current public HTS endpoints provide search and reference context rather than an automated product classification. Log the facts, sources, alternatives, and human decision; do not convert the top search result into an auto-approved code.
Forgetting Section 232 derivative scope
A non-metal product can still be a Section 232 derivative if it contains steel, aluminum, or copper. The Tandom calculator handles this via the steel/aluminum/copper percentage and melt-and-pour or smelt-and-cast country inputs. Skipping these inputs on a derivative line means the response will not include Section 232 amounts. Your integration must surface those inputs when conditionalFields.has232 is true in the response.
Defaulting smelt-and-cast aluminum to "US"
Aluminum derivatives entered with smelt-and-cast unknown pay 200% by default per Proclamation 10522, codified at 9903.85.67/.68, since June 28, 2025. Defaulting to a country (especially "US") without proof is an enforcement risk. Pass the country only when the mill certificate confirms it; pass "unknown" otherwise.
Building a CSMS watcher that polls daily
CBP issues CSMS bulletins multiple times per day during active tariff windows (the spring 2025 IEEPA period saw 30+ in a single week). Daily polling lags reality. Subscribe to the RSS feed or poll on a 30-minute interval. Filter for messages that reference Chapter 99 codes in your last-300-day entry cohort.
Treating MPF and HMF as duties
MPF and HMF are user fees, not duties. They never qualify for Section 232/301/122 exclusions. USMCA originating goods waive MPF; nothing waives HMF. Your calculation should keep them in a separate fees column on the entry summary, not stacked into the duty total.
Not capturing the API response version
The Tandom calculator response includes a provenance block citing the data version (HTS revision, AD/CVD order snapshot, Chapter 99 source set). Persist it. When CBP audits two years later, the question "what data was the broker filing against?" gets answered by that block.
Ignoring fair-use and rate-limit metadata
Tandom's public API is free with fair-use and operation-specific safeguards. Read the returned rate-limit metadata, implement backoff for 429 responses, and control concurrency. Do not hard-code an old monthly quota or assume an unlimited production service.
Skipping the entry-date input
The rate of duty under 19 CFR 141.69 is locked at the time of entry. A shipment exported under a 25% rate but entered after the rate moved to 50% pays 50%. If your integration omits date and defaults to today, every retroactive calculation is wrong.
Glossary
- ABI
- Automated Broker Interface. The set of CBP-managed message formats used to file entries electronically into ACE. Filing requires a CATAIR-certified vendor and a CBP Filer Code.
- ACE
- Automated Commercial Environment. CBP's primary system for processing entries, manifests, and admissibility checks. Every US import filing today goes through ACE.
- API key
- A bearer token passed in the Authorization header that authenticates a direct request to the Tandom API. Create or manage keys at tandom.ai/account/api-keys. Access is free with fair-use and operation-specific safeguards.
- CATAIR
- Customs and Trade Automated Interface Requirements. The CBP specification that governs ABI filing message formats. ABI software vendors must certify against CATAIR to file entries.
- CSMS
- Cargo Systems Messaging Service. CBP's bulletin system for issuing operational guidance, rate changes, and policy updates to the trade community. Subscribed via govdelivery.com.
- MCP
- Model Context Protocol. An open standard from Anthropic that lets AI assistants call external APIs through a typed schema. Tandom exposes a reviewed read-only subset of its public import tools over MCP at
mcp.tandom.ai/mcp. - PSC
- Post Summary Correction. The 19 CFR 174 mechanism for correcting an entry summary within 300 days of entry, before liquidation. Used to recover duties when CBP issues a retroactive rate change or claim a missed exclusion.
- Reasonable care
- The 19 USC 1484(a) standard that requires the importer of record to use reasonable care in providing accurate entry data. Using an AI tool does not transfer the obligation; the licensed broker still has to verify.
- Fair-use safeguard
- Account-level and operation-specific controls that protect the shared free API. Integrations should read rate-limit metadata, handle
429responses, and use bounded concurrency. The current access description lives at tandom.ai/api#access. - ACE reporting order
- The required sequence in which Chapter 99 codes appear on an entry summary line. The duty calculator returns
aceReportingOrderon each chapter99Sources entry; file in that order. - Match type
- The retrieval path or granularity by which an AD/CVD candidate matched the shipment. Current values include heading, heading_partial, and named advisory variants. It is a triage signal, not a legal confidence score or scope determination.