ClaveProdServ (SAT product/service key) is the 8-digit code from catalog c_ClaveProdServ that identifies which product or service sits on each line item of a Mexican electronic invoice (CFDI) 4.0. On Mexico–U.S. freight it is the fiscal label of the service (linehaul, detention, handling) · not CFDI “use” and not the goods key inside Carta Porte.
If you landed here from “Uso CFDI transport equipment (I03),” you are in the wrong catalog for invoicing a trip: I03 is about acquiring equipment, not charging for a freight move. This page owns transport service keys, the Carta Porte goods split, and validation before pay.
- c_ClaveProdServ per line
- 8 digits
- Uso CFDI ≠ freight key
- ≠ I03
- stamp + current catalogs
- CFDI 4.0
- key · rate · POD
- Pre-pay
Free tool: SAT code finder · cluster: PAC / stamping · transfer CFDI guide · Carta Porte · freight audit.
What ClaveProdServ is (usable answer)
In the CFDI XML, each concept line carries ClaveProdServ + description + ClaveUnidad + amounts. The PAC checks that the key exists and is valid in the catalog version for your issuance. It is not cosmetic: without it there is no usable voucher for collection or for the buyer’s trip file.
Structure follows UNSPSC (8 digits: division, group, and class to product). Ops reading example: 78101800 usually maps to road freight transport · always confirm the official text in the catalog, not a 2021 PDF.
What you bill
- Product or service on the line
- Catalog c_ClaveProdServ
- e.g. freight 78101800
How the receiver uses it
- Buyer-declared use
- Catalog c_UsoCFDI
- e.g. I03 = transport equipment
ClaveProdServ ≠ Uso CFDI (I03 is not freight)
Older fiscal blogs mix the Uso CFDI alphabet (G01–I08, D01–D10) with the service key. That fuels the viral query “transport equipment I03” when the shipper only wants to know which key stamps the freight line.
ClaveProdServ
Catalog: c_ClaveProdServ
Question it answers: What service or product am I billing on this line?
Freight example: 78101800 road freight transport
UsoCFDI
Catalog: c_UsoCFDI
Question it answers: How does the receiver use this CFDI?
Freight example: I03 only when buying transport equipment · not for “shipping a load”
ClaveUnidad
Catalog: c_ClaveUnidad
Question it answers: In what unit do I measure the concept?
Freight example: E48 service · HUR hour · KGM kg
On the transfer CFDI guide, SAT’s historical filling instructions for type T often point to Uso CFDI P01 (To define); some software cites S01. Confirm the current instructivo / Anexo 20 and your PAC before freezing a template · do not copy a 2021 blog.

Three catalogs you must not mix
On a trip with Carta Porte 3.1 complement, at least three different “keys” coexist. Mixing them is the fastest path to a reject or an endless accounts payable dispute.
c_ClaveProdServ
Where it lives: CFDI concept
What it describes: Billed service (freight, accessorial)
Typical mistake: Putting the goods key on the service line
c_ClaveProdServCP
Where it lives: Goods nodes in Carta Porte
What it describes: Merchandise transported
Typical mistake: Using only 78101800 for “everything”
c_ClaveUnidad
Where it lives: Concept (and goods nodes as required)
What it describes: Unit of measure
Typical mistake: HUR on all-in freight or E48 on hourly detention
Common freight and accessorial codes
These codes are the most used on Mexico–U.S. truck corridors. Treat them as a starting point: truth is the current catalog (Carta Porte cutoffs often cited: 13-Jan-2026 · confirm on SAT portal / your PAC) and the OCL finder.
Road freight
Typical ClaveProdServ: 78101800
Usual unit: E48
Note: Do not bury accessorials here
Reefer freight
Typical ClaveProdServ: 78101801
Usual unit: E48
Note: Confirm official description
Hazmat freight
Typical ClaveProdServ: 78101802
Usual unit: E48
Note: Align with CP hazmat nodes
Detention / demurrage
Typical ClaveProdServ: 76122401
Usual unit: HUR
Note: Separate line vs base freight
Weighing
Typical ClaveProdServ: 78121602
Usual unit: E48
Note: Not “generic freight”
Storage
Typical ClaveProdServ: 78111800
Usual unit: E48 / day per rate
Note: Separate from linehaul
How to choose the right code
Choose by what you bill on that line, not by the truck in the yard or the buyer’s Uso CFDI.
Elige un paso para ver el detalle
Detalle del paso · 01
Name the service in plain language
How it applies on the Mexico–U.S. corridor
On the corridor, a wrong key is not just “ugly”: it breaks the carrier’s collection cycle and the shipper / 3PL payment cycle.
- Issuance: the carrier (or who applies) builds the freight invoice CFDI with ClaveProdServ per concept and, when required, Carta Porte 3.1 complement.
- Stamping: the PAC validates catalogs and returns a UUID · it does not audit your rate.
- Pre-pay: accounts payable matches key ↔ description ↔ rate ↔ evidence (proof of delivery, POD) · see pre-pay validation.
- Own moves / type T: follow the transfer CFDI guide; do not improvise Uso CFDI or goods keys.
Process: from line item to pre-pay
From capture to payment there are two halves: issue correctly and verify before paying.
Elige un paso para ver el detalle
Detalle del paso · 01
Identify service
Step 1
Expensive freight mistakes
Dump everything into 78101800
Why it hurts: Breaks rate–invoice match and cost analytics
Fix: Separate lines per accessorial
Use I03 / Uso CFDI as a “freight key”
Why it hurts: Wrong catalog; broken templates
Fix: ClaveProdServ on concept; Uso CFDI separately
Goods key on the service concept
Why it hurts: Reject or incoherent complement
Fix: Service in ProdServ · goods in ProdServCP
Stale Carta Porte catalogs
Why it hurts: Mass stamp rejects
Fix: Refresh tables; test with your PAC
Pay without matching key vs rate
Why it hurts: Typical 5–7% leakage when leaving sampling
Fix: Audit 100% of the pilot flow
OCL and the trip file
OCL Cargo is an autonomous transportation management system (TMS) with AI agents that operate screens and portals: they validate keys on the concept, tie CFDI / UUID, Carta Porte complement, and evidence before releasing payment. It coexists with your system of record on day one.
OCL can stamp invoice and Carta Porte when your stack needs it. The wedge is not “another keys spreadsheet”: it is the pre-pay trip file and the exception tower. Who decides exceptions? Your team. Typical pilot 6–8 weeks; recovery pattern 5–7% when auditing 100% of the pilot flow · price signal from ~$50 MXN per shipment by scope.
Start free in the SAT code finder · then apply the same rule at pay time.
Key takeaways6 points
- ClaveProdServ = 8-digit code from c_ClaveProdServ on each CFDI 4.0 line item.
- ≠ Uso CFDI: I03 is buying transport equipment · not a freight service key.
- Service (concept) ≠ goods (ClaveProdServCP in Carta Porte) ≠ unit (ClaveUnidad).
- Typical road freight: 78101800 + E48; accessorials on separate lines · verify in the finder.
- Wrong key to PAC reject, audit fail, and accounts payable delay.
- OCL checks keys on screens and in the trip file; can stamp invoice and Carta Porte; exceptions stay with your team.
Do keys live in Excel while payment lives elsewhere?
Related reading
- SAT code finder (free)
- What is a PAC / Authorized Certification Provider
- Transfer CFDI guide
- What is Carta Porte
- Carta Porte 3.1 complement
- Income CFDI in transport
- Freight invoice
- Freight audit
- Freight tax · CFDI and Carta Porte
- Mexico transport invoicing 2026
Official sources to calibrate: Carta Porte complement (SAT) · Anexo 20 / CFDI 4.0 catalogs on the SAT portal. Versions and cutoffs change · do not memorize a third-party Excel.
Frequently asked questions
It is the 8-digit code from catalog c_ClaveProdServ that identifies the product or service on each line item of a Mexican electronic invoice (CFDI) 4.0. Without a valid key, the Authorized Certification Provider (PAC) usually rejects stamping.
No. Uso CFDI (catalog c_UsoCFDI) states how the receiver uses the CFDI. I03 (Transport equipment) applies when you buy vehicles or transport equipment as an asset · not when you invoice a freight service or “ship a load.” Freight uses ClaveProdServ on the concept (e.g. 78101800) and, when applicable, goods keys in ClaveProdServCP inside the Carta Porte complement.
The most cited code for road freight transport is 78101800 with typical unit E48 (service). Common variants: reefer 78101801, hazmat freight 78101802. Always confirm description and validity in the SAT code finder or the official SAT catalog.
ClaveProdServ = the service (or product) you bill on the CFDI concept (linehaul, detention, handling). ClaveProdServCP = the goods moved in the Carta Porte complement. Mixing them is one of the most expensive reject and audit failures.
Contracted freight usually uses an income (ingreso) CFDI plus complement when required. A transfer (traslado) CFDI moves goods without freight charge on that voucher. The PAC stamps; it does not pick the correct product key for you. Ops guide: transfer CFDI.
In the free OCL SAT code finder (exported official catalogs, no signup) or SAT portal files (Anexo 20 / Carta Porte complement). Do not memorize 2021 Excel dumps.
Stamp rejection, corrective CFDI, carrier collection delay, and accounts payable hold. Federal Fiscal Code (CFF) penalties depend on the case and current rules; calibrate with your advisor · operational cost (rework + stopped payment) often hurts first.
