The Uyghur Forced Labor Prevention Act Entity List identifies companies whose goods are presumed to be produced with Uyghur forced labor in Xinjiang—any imports from these entities are barred from US markets unless importers can rebut the presumption with clear and convincing evidence.
What the UFLPA is
The Uyghur Forced Labor Prevention Act (UFLPA) was signed into law in December 2021 and took effect on June 21, 2022. It is the most sweeping forced labor import prohibition in US history. The statute creates a rebuttable presumption—codified at 19 USC 1307—that all goods mined, produced, or manufactured wholly or in part in the Xinjiang Uyghur Autonomous Region of China, or by any entity appearing on the UFLPA Entity List, are made with forced labor and are therefore barred from entry into the United States.
The presumption is categorical and applies regardless of whether CBP has independently verified that a specific shipment involved forced labor. An importer whose cargo touches a listed entity anywhere in the supply chain—as a raw material supplier, a component manufacturer, or a processor two tiers upstream—faces the same detention and exclusion risk as an importer that sourced directly from a labor camp. This structure shifts the entire burden of proof to the importer.
The law is administered jointly by US Customs and Border Protection (CBP) within the Department of Homeland Security and the Forced Labor Enforcement Task Force (FLETF), an interagency body chaired by the DHS Secretary. FLETF includes representatives from the Departments of State, Treasury, Commerce, Labor, Justice, and the Office of the US Trade Representative. FLETF determines which entities are added to the Entity List; CBP carries out detention, exclusion, and seizure at the port of entry.
The UFLPA Entity List
The UFLPA Entity List is maintained by FLETF and expanded through formal Federal Register notices. Each notice identifies new entities, the category of violation alleged, and the evidentiary basis for listing. The list is not static: FLETF can add entities at any time, and as of 2024 the list had grown to roughly 30 to 50 entities spanning multiple industry sectors, with additions continuing.
FLETF organizes listed entities into three categories that correspond to the statutory prohibitions:
- Category 1—entities that work with the Xinjiang government to recruit, transport, transfer, harbor, or receive workers through government- sponsored labor transfer programs. This category covers organizations that participate in the state apparatus that moves Uyghur workers from rural Xinjiang to factories inside and outside the region under conditions that US and international labor standards define as coercive.
- Category 2—entities in Xinjiang that mine, produce, or manufacture goods using the labor of people who are or have been interned or subjected to other forms of arbitrary detention in the region. Most of the major polysilicon and cotton producers fall in this category.
- Category 3—exporters of goods produced with labor from entities in Category 1 or Category 2, even if the exporting entity itself is located outside Xinjiang. This category reaches downstream manufacturers in other Chinese provinces or third countries whose inputs trace to Xinjiang.
Key entities on the list as of 2024 include Hoshine Silicon Industry Co. (the dominant metallurgical-grade silicon producer in Xinjiang and a direct input to the polysilicon supply chain), Xinjiang Daqo New Energy Co. (a major polysilicon manufacturer whose parent company was until recently NYSE-listed), Xinjiang East Hope New Energy Co., and the Xinjiang Production and Construction Corps (XPCC) together with multiple named XPCC divisions. The XPCC—known in Chinese as Bingtuan—is a quasi-military organization that administers roughly one-third of Xinjiang's land area, operates its own court system, and has been subject to parallel OFAC sanctions since 2020.
Supply chain impact
The UFLPA's reach into global supply chains is substantial because of Xinjiang's dominant position in several commodities that feed into products sold worldwide.
Cotton
Xinjiang accounts for approximately 85 percent of China's cotton production and roughly 20 percent of world cotton supply. The region's cotton industry has been the subject of credible allegations of state-organized forced labor since at least 2018, when academic researchers and investigative journalists documented the government's “surplus labor” transfer programs moving Uyghur workers to picking operations under conditions that preclude voluntary refusal. The downstream exposure is vast: a garment that enters the US may contain Chinese yarn spun from Xinjiang cotton processed by a Vietnamese or Bangladeshi mill, with no visible Xinjiang connection in the shipping documents. Brands including H&M, Burberry, and Nike faced significant consumer backlash in 2021 after publicly committing to avoid Xinjiang cotton, illustrating the reputational stakes for companies with visible supply chain positions.
Polysilicon and solar panels
Xinjiang produces an estimated 35 to 45 percent of the global supply of polysilicon—the purified silicon that is the primary raw material for photovoltaic solar cells. Four of the five largest polysilicon producers in the world had significant Xinjiang operations as of 2022, and the four entities named on the UFLPA Entity List represent the majority of Xinjiang polysilicon output. The solar panel supply chain runs from polysilicon through ingots, wafers, cells, and finally modules; a Xinjiang polysilicon input at the first step contaminates every product in the chain.
CBP detentions of solar panels under UFLPA enforcement reached over $2 billion in assessed value during fiscal year 2023. Shipments from major module manufacturers in Malaysia, Vietnam, Thailand, and Cambodia have been detained when CBP found evidence that polysilicon inputs traced to Xinjiang producers, even where the modules themselves were manufactured outside China. The solar industry's difficulty in demonstrating clean supply chains reflects how deeply Xinjiang polysilicon is embedded in global panel production.
Tomatoes and food processing
Xinjiang produces approximately 30 percent of China's canned tomato paste. The region's long growing season and arid climate make it well-suited for large-scale tomato cultivation, and state farms in the area—many operated by XPCC entities—supply paste that enters global food supply chains through third-country repackaging. Tomato paste from Xinjiang has been documented in products reaching European and US grocery shelves under multiple brand names, processed through Italian and other intermediaries who relabel the product.
CBP enforcement mechanism
CBP's enforcement toolkit under UFLPA builds on an older instrument: Withhold Release Orders (WROs). WROs predated UFLPA and allowed CBP to detain goods from a specific region or entity on reasonable belief that forced labor was involved. The standard for WROs was lower than UFLPA's statutory rebuttable presumption, and WROs did not shift the burden of proof to the importer in the same formal way. Several Xinjiang-specific WROs were issued by CBP in 2020 and 2021 before UFLPA took effect; those WROs remain in force and operate in parallel with UFLPA.
Under UFLPA, when CBP identifies a shipment that it believes originates in Xinjiang or involves a listed entity, it issues a detention notice to the importer. The importer then has a limited window—typically 30 days, with possible extension—to submit a rebuttal package. To overcome the presumption, the importer must demonstrate by clear and convincing evidence that the goods were not produced with forced labor. This is a demanding legal standard; it requires affirmative proof, not merely absence of contrary evidence.
CBP has published guidance on what constitutes adequate rebuttal documentation. The required showing includes:
- Complete supply chain tracing from raw material extraction through every processing and manufacturing step to the finished product presented at the port of entry, with documentation at each tier sufficient to identify all suppliers and their geographic locations.
- Evidence that workers at each step in the supply chain were paid market-rate wages, received wages in their own bank accounts or by cash directly, and were not subject to wage garnishments or deductions that would indicate debt bondage or state intermediation.
- Evidence that workers retained freedom of movement and could voluntarily terminate their employment without penalty, government coercion, or threat of detention—the defining distinction between labor that is forced and labor that is not.
- Third-party audit documentation where available, with auditors who operated without government or employer escort and who interviewed workers in private.
If the importer fails to submit a rebuttal within the applicable period, or if CBP determines that the rebuttal does not meet the clear and convincing evidence standard, the goods are excluded: they must be exported out of the United States or abandoned. In cases where evidence of willful importation in violation of UFLPA is found, goods may be seized and forfeited rather than merely excluded.
Data access and official sources
The UFLPA Entity List itself is published by DHS at https://www.dhs.gov/uflpa-entity-list. The page provides an HTML summary table of listed entities and a downloadable PDF; there is no structured machine-readable API or bulk data feed from DHS. Analysts who want structured data must parse the PDF or maintain their own database updated against Federal Register notices.
Federal Register notices announcing UFLPA Entity List additions are available through the Federal Register API at federalregister.gov/api/v1/documents with a search query for “UFLPA” or “Uyghur Forced Labor Prevention Act.” Each notice is a structured JSON document with publication date, agency, document type, and full text. The notice text is the authoritative record of which entity was added, under which category, and on what factual basis.
DHS and FLETF publish a UFLPA Annual Report and quarterly enforcement statistics covering the number of shipments detained, the assessed value of detained merchandise, and the industry breakdown of detentions. These reports are available on the DHS UFLPA enforcement page and constitute the primary official source for aggregate enforcement metrics.
Commercial supply chain tracing tools—including Panjiva (S&P Global Market Intelligence), ImportGenius, and Trade Data Monitor—provide bill of lading data that importers use to map their upstream supply chains. These platforms are the practical workhorses of UFLPA rebuttal preparation; they allow importers to identify every shipment received from a supplier, cross-reference that supplier's own procurement history, and build the chain-of-custody documentation that CBP requires. All are paid services with no free API access.
Comparison with other forced labor and sanctions tools
The UFLPA Entity List operates in a broader ecosystem of US government tools that address Xinjiang-related human rights concerns, and understanding the differences is important for compliance analysis.
OFAC XPCC sanctions
The Treasury Department's Office of Foreign Assets Control designated the Xinjiang Production and Construction Corps and two of its current and former senior officials under Executive Order 13818 (Global Magnitsky) in July 2020. The OFAC XPCC designation is a financial sanctions action: it blocks all XPCC property within US jurisdiction and prohibits US persons from transacting with XPCC. The UFLPA XPCC listing is an import prohibition: it bars goods from XPCC-affiliated entities from entering US commerce. The two designations are parallel and cumulative—a transaction with an XPCC entity may violate both OFAC sanctions and UFLPA simultaneously.
BIS Entity List
The Commerce Department's Bureau of Industry and Security maintains a separate Entity List that controls the export of US-origin goods, software, and technology to listed parties. Several Xinjiang-related entities appear on the BIS Entity List—including Hikvision, Dahua Technology, and others involved in mass surveillance—but the BIS list is an export control instrument, not an import prohibition. A company can simultaneously appear on the BIS Entity List (restricting what US exporters can ship to it) and the UFLPA Entity List (restricting what it can ship into the US), but the two lists have different legal bases, different administering agencies, and different penalty structures.
Global Magnitsky Act designations
Executive Order 13818, implementing the Global Magnitsky Human Rights Accountability Act of 2016, authorizes Treasury to designate foreign individuals and entities responsible for serious human rights abuses or significant corruption. The XPCC OFAC designation was issued under this authority. Global Magnitsky designations result in SDN listing—the same list that governs all OFAC sanctions—and carry the full asset-blocking and transaction-prohibition consequences of SDN status. UFLPA listing, by contrast, results in an import presumption rather than an asset block.
Executive Order 13818 and the SDN list
Several Xinjiang-related entities that appear on the UFLPA Entity List also appear on the OFAC SDN list under the Xinjiang-related program codes. Where an entity appears on both lists, US persons face both the import prohibition (UFLPA) and the full asset-blocking and transaction-prohibition consequences of SDN listing. Compliance programs operating in both import and financial services contexts must screen against both lists independently.
Parsing the UFLPA entity list and cross-referencing OFAC
Because DHS publishes the UFLPA Entity List as a PDF without a structured API, the following script uses an embedded dataset representing the list structure based on publicly available Federal Register notices. It categorizes entities by industry sector, flags XPCC-affiliated entities, and cross-references each entity against live OFAC data from the Consolidated Screening List API at api.trade.gov—the same feed that powers the Trade Compliance Center's screening tool.
import requests
import json
import collections
# UFLPA Entity List: embedded data representing the list structure as of early 2025
# Source: https://www.dhs.gov/uflpa-entity-list
# The DHS page publishes a PDF; no structured API exists.
# This dataset is based on publicly available FLETF Federal Register notices.
UFLPA_ENTITIES = [
# --- Polysilicon sector ---
{
"name": "Hoshine Silicon Industry Co., Ltd.",
"aliases": ["Xinjiang Hoshine Silicon Industry"],
"sector": "polysilicon",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Largest metallurgical-grade silicon producer in Xinjiang; added at UFLPA launch June 2022",
},
{
"name": "Xinjiang Daqo New Energy Co., Ltd.",
"aliases": ["Daqo New Energy Xinjiang", "Xinjiang Daqo"],
"sector": "polysilicon",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Major polysilicon manufacturer; subsidiary of NYSE-listed Daqo New Energy Corp",
},
{
"name": "Xinjiang East Hope New Energy Co., Ltd.",
"aliases": ["East Hope New Energy"],
"sector": "polysilicon",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Polysilicon producer; part of East Hope Group conglomerate",
},
{
"name": "GCL-Poly Energy Holdings Xinjiang",
"aliases": ["GCL Solar Xinjiang", "Xinjiang GCL"],
"sector": "polysilicon",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Xinjiang operations of GCL-Poly, one of world\'s largest polysilicon producers",
},
# --- Cotton and garments sector ---
{
"name": "Xinjiang Production and Construction Corps (XPCC)",
"aliases": ["Bingtuan", "XPCC"],
"sector": "cotton",
"province": "Xinjiang",
"xpcc_affiliated": True,
"category": 1,
"notes": "Quasi-military organization administering roughly 1/3 of Xinjiang; subject to parallel OFAC sanctions",
},
{
"name": "XPCC First Division Aksu City",
"aliases": ["XPCC 1st Division"],
"sector": "cotton",
"province": "Xinjiang",
"xpcc_affiliated": True,
"category": 1,
"notes": "XPCC subsidiary division; major cotton growing area",
},
{
"name": "XPCC Eighth Division Shihezi City",
"aliases": ["XPCC 8th Division"],
"sector": "cotton",
"province": "Xinjiang",
"xpcc_affiliated": True,
"category": 1,
"notes": "XPCC subsidiary division; major textile hub",
},
{
"name": "Xinjiang Junggar Cotton and Linen Co., Ltd.",
"aliases": ["Junggar Cotton"],
"sector": "cotton",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Cotton ginning and processing",
},
{
"name": "Turpan Dingxin Textile Co., Ltd.",
"aliases": ["Dingxin Textile"],
"sector": "cotton",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Yarn spinning; accused of receiving transferred Uyghur labor",
},
# --- Electronics sector ---
{
"name": "Nanchang O-Film Tech Co., Ltd.",
"aliases": ["O-Film Group"],
"sector": "electronics",
"province": "Jiangxi",
"xpcc_affiliated": False,
"category": 3,
"notes": "Camera module manufacturer; Xinjiang labor transfer program participation",
},
{
"name": "Hefei Bitland Information Technology Co., Ltd.",
"aliases": ["Bitland"],
"sector": "electronics",
"province": "Anhui",
"xpcc_affiliated": False,
"category": 3,
"notes": "Electronics assembly; exported goods traced to Xinjiang-sourced labor",
},
# --- Food processing sector ---
{
"name": "Xinjiang Guannong Fruit and Antler Co., Ltd.",
"aliases": ["Guannong"],
"sector": "food_processing",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Tomato paste and canned tomato products; Xinjiang produces ~30% of China\'s canned tomatoes",
},
{
"name": "Xinjiang Chalkis Co., Ltd.",
"aliases": ["Chalkis"],
"sector": "food_processing",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "Tomato processing; significant export volumes to EU and US food supply chains",
},
# --- Mining / other sector ---
{
"name": "Xinjiang Nonferrous Metal Industry Group Co., Ltd.",
"aliases": ["XNMIG"],
"sector": "mining",
"province": "Xinjiang",
"xpcc_affiliated": False,
"category": 2,
"notes": "State-owned mining conglomerate; copper, aluminum, rare earths",
},
]
SECTOR_LABELS = {
"polysilicon": "Polysilicon / Solar",
"cotton": "Cotton / Garments",
"electronics": "Electronics",
"food_processing": "Food Processing",
"mining": "Mining / Metals",
}
CATEGORY_LABELS = {
1: "Cat 1: Xinjiang gov\'t labor transfer",
2: "Cat 2: Xinjiang producer",
3: "Cat 3: Exporter of Xinjiang-sourced goods",
}
def fetch_csl_xpcc():
"""Cross-reference UFLPA entities against OFAC\'s Consolidated Screening List."""
CSL_URL = "https://api.trade.gov/static/consolidatedscreening/consolidated.json"
print("Fetching Consolidated Screening List from api.trade.gov...")
try:
r = requests.get(CSL_URL, timeout=60)
r.raise_for_status()
data = r.json()
results = data.get("results", [])
# Filter to OFAC sources only
ofac_entries = [e for e in results if "OFAC" in e.get("source", "")]
# Build a set of names for quick lookup
ofac_names = set()
for e in ofac_entries:
ofac_names.add(e.get("name", "").lower())
for alt in e.get("alt_names", []):
ofac_names.add(alt.lower())
return ofac_names
except Exception as exc:
print(f" Warning: could not fetch CSL ({exc}); cross-reference skipped")
return set()
def name_in_ofac(entity_name, aliases, ofac_names):
"""Return True if any variant of the entity name appears in OFAC data."""
candidates = [entity_name] + aliases
for c in candidates:
if c.lower() in ofac_names:
return True
# Partial substring match for XPCC and major entities
for ofac_name in ofac_names:
if len(c) > 10 and c.lower()[:15] in ofac_name:
return True
return False
def main():
ofac_names = fetch_csl_xpcc()
# Tally by sector
sector_counts = collections.Counter(e["sector"] for e in UFLPA_ENTITIES)
xpcc_count = sum(1 for e in UFLPA_ENTITIES if e["xpcc_affiliated"])
cat_counts = collections.Counter(e["category"] for e in UFLPA_ENTITIES)
print("\n=== UFLPA Entity List Summary ===")
print(f"Total tracked entities : {len(UFLPA_ENTITIES)}")
print(f"XPCC-affiliated : {xpcc_count}")
print()
print("--- By Sector ---")
for sector, label in SECTOR_LABELS.items():
print(f" {label:<28} {sector_counts.get(sector, 0):>3}")
print()
print("--- By Category ---")
for cat in (1, 2, 3):
print(f" {CATEGORY_LABELS[cat]:<40} {cat_counts.get(cat, 0):>3}")
print("\n=== Entity Detail Table ===")
print(f"{'Entity Name':<55} {'Sector':<18} {'Cat':>3} {'XPCC':>4} {'OFAC Match':>10}")
print("-" * 100)
for e in UFLPA_ENTITIES:
in_ofac = name_in_ofac(e["name"], e["aliases"], ofac_names)
print(
f"{e['name'][:54]:<55} "
f"{SECTOR_LABELS.get(e['sector'], e['sector'])[:17]:<18} "
f"{e['category']:>3} "
f"{'YES' if e['xpcc_affiliated'] else 'no':>4} "
f"{'YES' if in_ofac else 'no':>10}"
)
if ofac_names:
print("\nNote: OFAC cross-reference sourced from api.trade.gov CSL (live data)")
else:
print("\nNote: OFAC cross-reference unavailable; check network or CSL endpoint")
if __name__ == "__main__":
main()
The script produces two outputs. The summary section shows the count of tracked entities by sector and by FLETF category, giving a quick view of where UFLPA enforcement is concentrated. The detail table shows each entity with its sector, category, XPCC affiliation, and whether the entity or any alias appears in the live OFAC Consolidated Screening List—identifying the subset of entities that trigger both import prohibitions and financial sanctions simultaneously.
In production, the embedded entity data would be replaced with a parsed version of the DHS PDF, refreshed on each Federal Register notice. The CSL cross-reference call is live and requires network access; the API is unauthenticated and returns the full consolidated list in a single JSON response covering all OFAC, BIS, and State Department restricted party lists combined.
Related: Treasury OFAC sanctions · BIS export enforcement
Part of the Federal Regulatory Data Hub.