Fizz Labs CPSC CSV Pre-Checker

Fizz Labs CPSC CSV Pre-Checker is a data format checker, not testing, certification, customs brokerage or legal advice. The importer is responsible for certificate content.

Rules and sources

18 deterministic error rules, 1 warning rule, 2 reference notes and the HTS lookup. Each rule cites the CPSC document, section and page it comes from. Headers are compared with the CSV Template V3 header row character for character.

Errors are what we expect the Product Registry to reject. Warnings are worth fixing but not counted as errors. Notes are not CPSC CSV rules; their source is shown separately.

Checker rules and their CPSC sources
IDLevelRuleSource (document, section, page, quote)
R01errorRequired column headers are present
The 11 required headers plus Manufacturer GLN or Manufacturer Alternate ID must exist. A missing required header fails the whole upload.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields, p.7
“If any of these column headers are missing, the upload attempt will fail”
R02errorHeaders match the template exactly
Every header must be one of the 83 template headers, character for character, or a lab column renumbered for an extra lab (Lab 3 …). Duplicate headers are not allowed.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Bulk Upload Template Overview, p.3
“column names within the template file should not be changed unless additional laboratories are needed”

.CSV Template for Bulk Upload V3, Sheet1, row 1 (83 headers)
R03errorNo commas inside values; every row has as many cells as the header
A comma inside a value (even in quotes) breaks the upload; a stray comma also shifts every later column.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Important Things to Know > Do Not Include Commas, p.3
“including commas within any field value”
R04errorRequired values are not blank
A blank required value returns an error for that row.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields, p.7
“will result in an error message being returned for that specific row”
R05errorManufacturer GLN or Manufacturer Alternate ID on every row
At least one of the two manufacturer identifiers must have a value.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields (Manufacturer GLN --or-- Alternate ID), p.7
“One of these two pieces of information must be provided for each product entry”
R06errorCoded fields use the accepted values
Y/N flags, Primary Product ID Type, Certificate Type (GCC/CPC), Lab Type (ITL/LAB/NOL), Point of Contact and Lot Number Assigned By accept only the listed values. Same value in different letter case is a warning.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields (Accepted Values), p.7
“GTIN / UPC / SKU / Model Number / Serial Number / Registered Number / Alternate Identifier”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields (Accepted Values), p.7
“Importer / Manufacturer / Laboratory / Broker / Other”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Optional Fields (Accepted Values), p.10
“Seller / Manufacturer”
R07errorDates use MM/CCYY or MM/DD/CCYY and are real dates
Manufacture Date is MM/CCYY; Last Test Date, Production Start Date and Production End Date are MM/DD/CCYY. One-digit month/day is accepted (the template example uses 2/7/2025). ISO dates or Excel serial numbers mean Excel reformatted the cell.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields, p.7
“Date in format: MM/CCYY”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required/Optional Fields, p.7
“Date in format: MM/DD/CCYY”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Important Things to Know > Formatting Dates, p.3
“manually set the relevant cells to "Text" format”
R08errorValues stay within the length limits
Version IDs and Primary Product ID 19; Product Name, Description and Component Description 250; IDs, City, Country, Phone, Email, brand/colour/style and extra identifiers 50; Name, Address and State/Province 100; Apt/Suite and Zip 10; Lot Number 20; Test Report ID/URL/Access Key 400 characters.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required, Contingent and Optional Fields (Length Limit column), p.7
“Length Limit”
R09errorProduct Update = Y needs Current Version ID
An update must say which existing version it changes.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Contingent Fields (Current Version ID), p.8
“Required if "Product Update" value is "Y"”
R10errorCitation codes are present and separated by semicolons
Each lab with a Lab Type needs at least one code in its Citation Codes column; several codes are separated with ";".
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields (Lab 1 Citation Codes), p.7
“values must be separated by a semi-colon”
R11errorEvery code is on the CPSC code list for its lab type
ITL and LAB labs take citation codes; NOL labs take testing exclusion codes only.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Required Fields (Lab 1 Type), p.7
“should contain testing exclusion codes, not citation codes”

eFiling Citation and Testing Exception Codes (September 2026 Update), Sheet " Citation Codes" column A; sheet "Testing Exclusions" column B
R12errorLab identifiers match the lab type
ITL needs Lab {n} CPSC-ID; LAB needs Lab {n} Alternate ID or Lab {n} GLN. Lab data without a Lab Type is also an error.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Contingent Fields (Lab {#} CPSC-ID), p.8
“Required if Lab {#} is of type "ITL"”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Contingent Fields (Lab {#} Alternate ID --or-- GLN), p.8
“One of these fields is required if "Lab {#} Type" is "LAB"”
R13errorNew trade parties carry an ID, name and address
"… Is New?" = Y needs a GLN or Alternate ID plus Name, Address Line 1, City and Country. Missing phone, email, state or zip is a warning.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Trade Party Management > Adding Trade Parties Using CSV Upload (1, 2), p.6
“Either a GLN or Alternate ID must be provided for that new trade party”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Trade Party Management > Adding Trade Parties Using CSV Upload (2), p.6
“All required trade party information must be provided”
R14errorPoint of Contact "Other" needs a POC Alternate ID or POC GLN
With "Other", the POC trade party must be identified (new or existing).
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Contingent Fields (POC block), p.9
“if "Point of Contact (POC) for Test Result Records" contains a value of "Other"”
R15errorThe Primary Product ID Type column stays empty
If Primary Product ID Type is SKU, the SKU column must be empty (the ID is already in Primary Product ID).
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Optional Fields (GTIN / UPC / SKU …), p.10
“do not duplicate the identifier type that was used as a product's mandatory Primary ID Type”
R16errorLabs are numbered from 1 without gaps
Lab 3 columns need Lab 2 columns; every lab block has its Type and Citation Codes columns.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Contingent Fields (Lab {#} Is New?), p.8
“Each unique lab provided for a certificate must be numbered, starting at 1”
R17errorTemplate example rows are deleted
The three example rows shipped in the template must be removed before upload.
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Bulk Upload Template Overview, p.3
“should be fully deleted before attempting to upload any data”
R18errorIs Component? uses True/False/Yes/No
Lab {n} Is Component? accepts True, False, Yes or No (0/1 is a warning). Component Description only applies when it is True/Yes (otherwise a warning).
eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Optional Fields (Lab {#} is Component?), p.10
“True / False / Yes / No”

eFiling User Guide for CSV Upload, Version 3.0 (December 2025), Field Details > Optional Fields (Lab {#} Component Description), p.10
“available if the “…is Component?” field is set to “True” or “Yes””
W01warningCertificate type and code columns disagree
A code marked only for CPC used on a GCC row, or the reverse. The template itself has one such row, so this is a warning.
eFiling Citation and Testing Exception Codes (September 2026 Update), Sheet " Citation Codes" columns C (CPC) and D (GCC)
A01noteNon-English characters (reference only)
Not a CPSC CSV rule. CBP CATAIR v2.5 asks for some ACE descriptions in English; check with your importer.
CBP CATAIR CPSC eFiling IG v2.5, CBP CATAIR CPSC eFiling IG v2.5
A02noteRow longer than 5,000 characters (reference only)
Not a CPSC CSV rule. Reported for the eFiling API by a lab article; shown so you can split long text.
SGS, "11 questions to improve eFiling data management" (Oct 2026), SGS, "11 questions to improve eFiling data management" (Oct 2026)
H01infoHTS code on the CPSC eFiling HTS list (CP1 / CP2)
Separate input, not a CSV column. CP2 = certificate data is required; CP1 = may be needed. The list is not exhaustive.
CPSC Guidance and HTS List for Filing of Electronic Certificates (October 2026), Sheets CP1 and CP2, column " HTS Code"; Summary sheet

Code lists: 123 citation codes and 53 testing exclusion codes from the CPSC code list; 159 CP2 and 430 CP1 HTS codes. Codes stored as numbers in the CPSC file are read as Excel displays them (for example 4.10, not 4.1).