Carta Porte with Odoo in Mexico
Odoo issues the transfer CFDI with the Carta Porte complement through its Mexican localization, but not on its own: you install the module, decide whether your transfer is federal or not, and fill in data your catalogue probably does not have today. Here is the full list, plainly.
Does Odoo support the Carta Porte complement?
iTechDev implements Carta Porte in Odoo for Mexican companies that move goods.
- Transfer CFDI (type T)The document that covers the movement of goods. It is not a sales invoice: it carries no amount charged, it covers the transfer.
- Carta Porte complementThe data block attached to that CFDI: what moves, along which route, in which vehicle and with whom driving.
- Federal transportThe scenario that applies when the transfer uses federal highway. This is the one demanding full vehicle and driver configuration.
- Non-federal stretchShort distances that never touch federal highway. Covered by standard invoicing requirements, without the full apparatus.
- PACThe authorized provider that stamps. The same one you use for invoices stamps transfers, provided it supports the current complement version.
See in detail
Odoo does issue the transfer CFDI with the Carta Porte complement: the capability ships in an optional module of the Mexican localization rather than the base install, and it uses the same digital seal certificate and the same PAC you already use to stamp invoices. Now the part few people mention before you sign: the complement is not a switch. Odoo distinguishes two transfer CFDI scenarios — one for transfers that do not use federal highway, and a federal transport one — and only the first is covered by standard invoicing requirements. Federal transport demands extra configuration on contacts, vehicles and products, and that data rarely exists in the catalogue of a company coming from another system. The real work in a Carta Porte project is not installing the module: it is gathering and capturing that data.
Six operational reasons, zero adjectives
The code is yours from day one
Repos in your name, documented CI/CD and zero vendor lock-in. If you leave tomorrow, you take it all, running.
WhatsApp API with an official provider
We are a Meta Tech Provider: your WhatsApp Business API line with no middlemen, and chatbots wired to your ERP.
Sprint delivery you can click
A working demo every two weeks and measurable progress. No "it’s 80% done" without something you can click.
AI applied to your operation
LLM agents, RAG over your data and process automation — the same practice we use to run iTech itself.
Real nearshore: Texas + Monterrey
Legal entity in the U.S. (iTech Corp, Texas), contracts under U.S. law, same CST time zone and USMCA.
ERP with CFDI 4.0 invoicing
We implement Odoo with integrated SAT stamping (PAC), client portal and reconciliation — a full operation, not just software.
When this applies to you
What must be ready, field by field
The complement module
Carta Porte lives in an optional module of the Mexican localization. It installs separately from invoicing, and belongs in a test environment before production.
Vehicles and their paperwork
The unit you transfer with, its vehicle configuration, plates and insurance policy. If you subcontract, this data belongs to the carrier and you have to ask for it.
Drivers
Who drives, with tax ID and licence. One of the items that most often stalls a go-live, because it is rarely captured in any system.
Origin and destination addresses
Complete addresses with correct postal codes at both ends. A wrong postal code is among the most common stamping rejections.
SAT catalogue codes on your products
Every item moved needs its SAT code and unit. If your catalogue holds a thousand products, this is the bulk of the work.
Hazardous materials, where applicable
Moving chemicals or regulated material means declaring classification and packaging. Not optional, and not improvised on go-live day.
The PAC and the seal certificate
The same ones you already use to invoice, confirming the provider supports the current complement version. Confirmed up front, not during the first test.
The route from inventory
The delivery in Odoo triggers the transfer. If your inventory does not reflect real movements, Carta Porte inherits that mess.
Decisions to make before configuring
1Federal or not?
This sets how much work lies ahead. If every transfer is short and never touches federal highway, the scenario is far simpler. If even one route is federal, the full apparatus applies.
2Own fleet or carriers?
With your own fleet the data is yours and captured once. With carriers you depend on them handing it over and keeping it current, which is an operational process, not a system one.
3Who cleans the catalogue
SAT codes per product are the real bottleneck. Decide up front whether your team does it, we do, or both — it moves the timeline more than any configuration.
4What happens to past transfers
Recreating history rarely pays. Set a cut-off date and operate forward, leaving what came before as reference.
5Who issues day to day
Warehouse, traffic or billing. It changes who needs access and how error-proof the screen must be, because whoever uses it is rarely the accountant.
6How it gets tested
Stamp test transfers using real cases from your operation — the longest route, the odd one, the regulated material — before the first unit leaves. Finding a rejection with the truck loaded is expensive.
Tech stack
The tools and platforms we build it with — chosen for your problem, not for hype.
Questions about Carta Porte in Odoo
Can't find your question? Talk to an engineer — no sales script.
Contact us →Does Odoo generate Carta Porte natively or do I need custom development?
The Mexican localization generates it through an optional module, so it does not start from custom development. What usually does take work is everything around the module: SAT codes across your product catalogue, vehicle and driver data, and making sure your inventory deliveries reflect real movements. If someone offers to deliver it without touching your catalogue, it is worth asking how.
Which version of the complement does Odoo handle?
The current complement version is set by the tax authority and changes by decree, and what your installation supports depends on your Odoo version and the localization you have installed, not on a general answer. That is why we do not publish a number here that would expire: it gets verified against your instance and your PAC before we commit to a date. It is one of the first things we check in the technical analysis.
Do I need Odoo Enterprise for Carta Porte?
The underlying question is accounting, not transfers. In Mexico full official accounting is Enterprise, and since Carta Porte lives alongside your invoicing, the edition decision is made looking at the whole fiscal package rather than this complement in isolation. In the diagnostic we settle which edition applies before you pay for licences you will not use.
Can I use the same PAC I use for invoicing?
Normally yes, and it is preferable: same certificate, same provider, one place to check. What needs confirming is that the PAC supports the current complement version, because not all of them move at the same pace when the tax authority publishes a change. A ten-minute call that prevents a stalled go-live.
What if I only move goods within the city?
Then the non-federal transfer scenario applies, covered by standard invoicing requirements without the vehicle and driver apparatus. It is far simpler and it is the case for much of local commerce. The trap is companies that believe they are in that situation and have one federal route a month: one is enough for the other rules to apply.
How long does it take to get running?
The module configures quickly; the catalogue does not. The timeline is set by how many products need SAT classification and how complete your vehicle and driver data is. A company with its own fleet and a short catalogue is a different story from one with a thousand products and five subcontracted carriers. Our packages publish price and timeline by scope, and the real range for your case comes out of the technical analysis.
I am coming from Aspel or CONTPAQi where I already issued Carta Porte. Do I lose that?
No, but it does not carry over by itself either. The data already captured in your current system — product codes, vehicles, drivers — has to be brought across and mapped to Odoo’s model, and that is exactly the work that gets underestimated in migrations. It is planned as part of the migration project, not left as a to-do after go-live.
Request your technical analysis
Three fields and we schedule the first session. You leave with a closed written quote — yours, whatever you decide.
The packages, with published pricing
- Arranque Odoo $29,900You are coming from Excel and want to get CRM, sales, purchasing and inventory in order before dealing with tax compliance.
- Fiscal Esencial $44,900RESICO individuals, RESICO companies up to $35M, or Title IV individuals with income below $4,000,000.
- Empresa MX $89,000Companies under the general tax regime, or Title IV individuals with income from $4,000,000: those required to file electronic accounting and DIOT.
- Empresa MX · Odoo.sh $98,000General tax regime with at least one of the five triggers: retailer addenda, payroll inside Odoo, your own PAC, an accountant on Contpaq, or selling on Mercado Libre.
- Comercio MX $139,000Retail and commerce selling on the floor and online, needing to invoice both.
Plus VAT. You pay the Odoo license directly to Odoo, not to us. Which one applies depends on your tax regime, not your size.
More from Odoo
Start with the technical analysis
A closed budget in writing, yours even if you implement with someone else and credited to the project if you move forward. $7,500, one week.
No CTA sends you to a long questionnaire: three fields and you get the proposal.