Export Compliance Workflow
A complete guide to building an automated export compliance workflow using the ComplianceGrid APIs — from party screening through AES filing.
Overview
U.S. exporters must comply with multiple regulations: EAR (Export Administration Regulations), ITAR (International Traffic in Arms Regulations), OFAC sanctions, and Census Bureau AES filing requirements. This workflow automates the key compliance checks using ComplianceGrid APIs.
Workflow Steps
Step 1: Screen All Parties
Screen every party in the transaction — USPPI, consignee, end user, freight forwarder, and intermediaries — against the Consolidated Screening List (OFAC SDN, Entity List, BIS DPL, and 12+ federal lists).
Step 2: Classify the Commodity
Use AI-powered HS code classification to determine the correct tariff code. This determines if an export license is required and which regulations apply.
Step 3: Check for Prohibitions & Restrictions
Screen the commodity against destination-country prohibitions, sanctions programs, and import restrictions. Identify any license requirements.
Step 4: Determine Required Documents
Based on the commodity, destination, and regulatory findings, get the complete list of documents required for the shipment.
Step 5: Validate & File AES/EEI
For shipments over $2,500 (or any requiring a license), validate the Electronic Export Information and submit via AES WebLink.
Step 1: Restricted Party Screening
Screen all transaction parties against OFAC SDN, BIS Entity List, Denied Persons List, and 12+ other federal watchlists in a single API call.
import ComplianceGrid from "@compliancegrid/sdk";
const cg = new ComplianceGrid({
apiKey: process.env.COMPLIANCEGRID_API_KEY,
});
// Screen all parties in the transaction
const screening = await cg.compliance.screenParties([
{ name: "Acme Electronics Inc.", country: "US", type: "USPPI" },
{ name: "Berlin Tech GmbH", country: "DE", type: "CONSIGNEE" },
{ name: "Munich Semiconductor AG", country: "DE", type: "END_USER" },
]);
// Check results
if (screening.data.overallResult === "HIT") {
console.log("BLOCKED — matches found:");
for (const result of screening.data.results) {
for (const match of result.matches) {
console.log(` ${match.source}: ${match.name} (score: ${match.matchScore})`);
}
}
} else {
console.log("CLEAR — no watchlist hits. Proceed to classification.");
}Step 2: HS Code Classification
Classify the commodity to determine the correct HS/HTS code, duty rates, and whether an export license is required.
// AI-powered commodity classification
const classification = await cg.hs.classify({
description: "High-frequency oscilloscope, 20 GHz bandwidth, digital storage",
});
console.log(classification.data.classifications[0]);
// {
// htsNumber: "9030.20.00.00",
// description: "Oscilloscopes, spectrum analyzers...",
// confidence: 0.94,
// generalDutyRate: "Free",
// eccn: "3A002",
// exportControlled: true,
// licenseRequired: ["ECCN 3A002 requires BIS license for certain destinations"]
// }
// Also search by keyword for manual verification
const search = await cg.hs.search({ query: "oscilloscope digital" });
console.log(`Found ${search.data.totalResults} matching HTS codes`);Step 3: Prohibitions & Restrictions
// Check for country-specific prohibitions and restrictions
const prohibited = await cg.compliance.prohibitedGoods({
originCountry: "US",
destinationCountry: "DE",
commodityDescription: "High-frequency oscilloscope, 20 GHz bandwidth",
hsCode: "9030.20",
});
if (prohibited.data.evaluation.isProhibited) {
console.log("EXPORT BLOCKED — item is prohibited for this destination");
console.log(prohibited.data.evaluation.prohibitions);
} else if (prohibited.data.evaluation.isRestricted) {
console.log("License may be required:");
for (const r of prohibited.data.evaluation.restrictions) {
console.log(` ${r.regulation}: ${r.description}`);
console.log(` Requires license: ${r.requiresLicense}`);
}
} else {
console.log("No prohibitions or restrictions. Proceed to documentation.");
}
// Check export license requirements specifically
const license = await cg.compliance.exportLicense({
eccn: "3A002",
destinationCountry: "DE",
endUse: "Commercial electronics testing",
});
console.log(license.data);Step 4: Required Documents
// Determine all required shipping & compliance documents
const docs = await cg.shippingDocuments.getRequired({
origin_country: "US",
destination_country: "DE",
direction: "export",
commodity_category: "electronics",
transport_mode: "air",
shipment_value_usd: 50000,
has_dangerous_goods: false,
});
console.log(`${docs.data.total_documents} documents required:`);
for (const doc of docs.data.documents) {
console.log(` [${doc.category}] ${doc.name}`);
console.log(` Required: ${doc.is_required ? "YES" : "Optional"}`);
console.log(` Issuer: ${doc.issuing_authority}`);
}Step 5: AES/EEI Filing
For shipments valued over $2,500 (or any requiring an export license), file Electronic Export Information via AES WebLink.
// Validate the EEI filing data
const validation = await cg.aesFiling.validate({
usppi: {
companyName: "Acme Electronics Inc.",
ein: "12-3456789",
address: { street: "100 Main St", city: "Dallas", state: "TX", zip: "75201" },
},
consignee: {
companyName: "Berlin Tech GmbH",
address: { street: "Friedrichstr. 100", city: "Berlin", country: "DE" },
},
commodities: [{
scheduleBNumber: "9030.20.0060",
description: "Digital oscilloscope, 20 GHz",
quantity: 2,
unit: "NO",
value: 50000,
eccn: "3A002",
licenseType: "C33",
exportInfoCode: "HH",
origin: "D",
}],
transportMode: "AIR",
portOfExport: "2704", // DFW Airport
estimatedDepartureDate: "2026-03-15",
});
if (validation.data.isValid) {
console.log("Validation passed — ready to submit");
// In production, submit to AES WebLink:
// const filing = await cg.aesFiling.submit(validation.data.filingId);
// console.log("ITN:", filing.data.itn);
} else {
console.log("Validation errors:");
for (const err of validation.data.errors) {
console.log(` ${err.field}: ${err.message}`);
}
}Complete Workflow Summary
Screen All Parties
Classify the Commodity
Check for Prohibitions & Restrictions
Determine Required Documents
Validate & File AES/EEI
APIs used: Compliance Screening, HS Code Lookup, Shipping Documents, AES Filing
Time savings: Manual compliance checks take 2-4 hours per shipment. With ComplianceGrid, the entire workflow completes in under 5 seconds.
SEC + FDIC + FINRA lookups
Browse all compliance workflows