Part IV — Importing & Taxes (Trade / Fiscal)
Source:
baw-tui(TUI Lecar Import Ops, reponanpos/baw-tui,~/dev/baw) —config.toml(tax parameters) +src/lecar/motor/tributos.pyandcmv.py(the calculation engine), validated against SISCOMEX 09/03/2026. Cross-checked withlecar/homologacao/pesquisa-pis-cofins.md,regimes-isencao-homologacao.md, andfornecedores/baw/briefing-tributario.md. Every rate carries a source + year; gaps marked 🚩. Where a rate is a model parameter it is the Lecar working assumption, not a universal constant — flagged as such.This is the companion of the interactive simulator. The numbers below are live in
baw-tui: it recomputes landed cost, cash-out, CMV, dealer price and margin every time a parameter changes. This chapter explains the structure — which taxes hit an imported car, in what order, and how the landed cost is built — so the executive can read the simulator’s output. The worked numbers use the Lecar reference case: BAW 212 T01 diesel, CBU, NCM 8703.32.10, FOB USD 22,000, FX 5.75 BRL/USD (config.toml, status estimado).
17. The import process (Siscomex) — the operational flow
Section titled “17. The import process (Siscomex) — the operational flow”Every vehicle entering Brazil clears through Siscomex (Sistema Integrado de Comércio Exterior — the federal foreign-trade system run by Receita Federal + MDIC). You do not “pay tax at the port” as a single act; you file an import declaration, the system computes the tax stack, and clearance (desembaraço aduaneiro) releases the goods only after the duties are collected.
The operational sequence the importer lives through:
- Pre-import. The legal importer (a Brazilian CNPJ — see Part II) must hold a RADAR / Habilitação license in Siscomex to operate at all. The vehicle’s NCM code (Mercosul tariff classification —
8703.32.10for the diesel 212,config.toml) is what drives every rate downstream. Get the NCM wrong and the whole stack is wrong. - Shipping. Goods arrive at port (the Lecar model assumes sea freight: containers, with 3 units per container as the real MOQ unit —
config.toml [lote]). Maritime freight triggers AFRMM (Adicional ao Frete para Renovação da Marinha Mercante) — a merchant-marine surcharge on the freight (R$800/unit in the model —config.toml). - Import declaration (DI / Duimp). The despachante (customs broker) files the declaration. The CIF value (valor aduaneiro = FOB + international freight + insurance) is the base of the whole stack. Siscomex computes II, IPI, PIS/COFINS-Importação; ICMS is settled with the state.
- Clearance + collection. Federal taxes are debited; the Taxa Siscomex (system utilization fee, R$214.50/unit in the model) is paid; ICMS clears with the destination state’s SEFAZ. Goods are released.
- Port + inland. Storage at port (armazenagem, R$1,800/unit model), broker fee (despachante, R$4,000/unit model), and inland freight to the warehouse (frete interno, R$1,200/unit model) —
config.toml [despesas_desembaraco]. Note: inland freight enters after clearance, so it is excluded from the ICMS base (see §18).
Cash-flow reality (the simulator’s whole point). All of this is cash out before a single car is sold. The
baw-tuiFluxo de Caixa screen models containers arriving monthly against a sales ramp (config.toml [rampa]: 10 → 165 units/month over 12 months) and flags negative balance in red. Import is a working-capital business; the tax is only one line of the cash-out.
18. The tax stack — II, IPI, PIS/COFINS, ICMS
Section titled “18. The tax stack — II, IPI, PIS/COFINS, ICMS”Four taxes hit an imported car, in a fixed order, because each one’s base depends on the previous one. This cascade is the single most important thing to internalize: Brazil taxes the tax.
The order of application (from tributos.py)
Section titled “The order of application (from tributos.py)”CIF = FOB + international freight + insurance ← the customs value (valor aduaneiro)
1. II = CIF × 35% ← base: CIF2. IPI = (CIF + II) × 18.81% ← base: CIF + II (IPI sits on top of II)3. PIS = CIF × 2.10% ← base: CIF (NOT "por dentro") COFINS = CIF × 9.65% ← base: CIF (NOT "por dentro")4. ICMS "por dentro" (gross-up): pre_ICMS = CIF + II + IPI + PIS + COFINS + clearance expenses ICMS = (pre_ICMS / (1 − 12%)) × 12% ← ICMS is inside its own baseThe four rates the Lecar model uses (config.toml [aliquotas]):
| Tax | What it is | Base | Rate (model) | Source / status |
|---|---|---|---|---|
| II (Imposto de Importação) | Federal import duty | CIF | 35% | config.toml, status confirmado: “35% for Chinese vehicles from Jul/2026”. Definitive cost — generates no credit. |
| IPI (Imposto sobre Produtos Industrializados) | Federal manufactured-goods tax | CIF + II | 18.81% | config.toml, status confirmado: NCM 8703.32.10, TIPI per Decreto 11.158/2022 (updated to Jan/2026). Generates federal credit. (Note: the older briefing-tributario.md carried 13% as an estimate; the config’s 18.81% is the confirmed NCM-specific rate — use the config.) |
| PIS-Importação | Federal social contribution | CIF (valor aduaneiro) | 2.10% | config.toml + pesquisa-pis-cofins.md: Lei 10.865/2004, confirmed SISCOMEX 09/03/2026. Generates federal credit. |
| COFINS-Importação | Federal social contribution | CIF (valor aduaneiro) | 9.65% | config.toml + pesquisa-pis-cofins.md: Lei 10.865/2004, confirmed SISCOMEX 09/03/2026. Generates federal credit. |
| ICMS | State VAT on circulation of goods | CIF + II + IPI + PIS + COFINS + clearance expenses, grossed up | 12% (ES) | config.toml, status confirmado: ES, Lei 7.000/2001 art. 20. Generates state credit. Varies by state — see below. |
Two things that trip up foreign entrants
Section titled “Two things that trip up foreign entrants”(1) ICMS is calculated “por dentro” (inside its own base). It is not base × 12%. The base is grossed up so the tax is included in the figure it is computed on: ICMS = (pre_ICMS / (1 − 0.12)) × 0.12. A nominal 12% therefore costs more than 12% of the pre-tax figure. The simulator handles this; a hand calculation that forgets it understates the landed cost. (tributos.py, lines 93–98.)
(2) Only II is a true cost. The other three come back as credit. Under Lucro Real (the corporate tax regime — Part II §9), the importer is in the non-cumulative regime:
- II = definitive cost. It never returns. It is the only tax that goes straight into the cost of goods (
creditos = ipi + pis + cofins + icmsintributos.py— II is explicitly excluded). - IPI, PIS, COFINS, ICMS = fiscal currency, not cost. The importer pays them at clearance, then credits them against the tax owed when it sells the car onward (ICMS), or via monthly federal offset / DCOMP (IPI, PIS, COFINS). They are not in the CMV (cost of goods sold).
The working-capital trap. Credits are real money — eventually. The Lecar rule (
briefing-tributario.md): for cash purposes, treat credits as if they did not exist in the short term. They return in 30–90 days via offset, not as a refund. So the cash-out at the port is the gross stack (all four taxes), but the cost that prices the car is only CIF + II + expenses. The simulator separates these two views (saida_caixavscusto_baseincmv.py).
ICMS varies by state — this is a strategic lever, not a footnote
Section titled “ICMS varies by state — this is a strategic lever, not a footnote”II, IPI, PIS, COFINS are federal — the same anywhere in Brazil. ICMS is a state tax, so its rate and incentives differ by the state where the importer clears and sells. The Lecar model uses 12% (Espírito Santo) because the factory is in Sooretama/ES — not because 12% is the national rate. Other states run higher (commonly ~17–18% internal). This is why where you incorporate and clear matters — covered in §20.
A second ICMS subtlety: imported vehicles sold interstate carry a 4% interstate ICMS rate (Senate Resolution, for imported goods — briefing-tributario.md), distinct from the internal rate. 🚩 The interstate vs. internal split for the final distribution flow is a model parameter to harden with a tax advisor before final.
On the sell side (importer → dealer)
Section titled “On the sell side (importer → dealer)”When the importer invoices the dealer, PIS/COFINS are monofásico (single-stage, concentrated): the importer/manufacturer pays at its link (Lei 10.485/2002), and the dealer pays 0% on resale to the consumer (Art. 3). The dealer is a buy-and-resell business, not an agent — so the importer’s PIS/COFINS/ICMS base is the dealer price (~R$299k), not the consumer PVP (R$365k). That ~R$66k difference saves ~R$11.7k of tax per unit (pesquisa-pis-cofins.md §6.5). See Part V §25 for why “repasse is not commission.”
🚩 Open with the tax advisor (from
pesquisa-pis-cofins.md§4). Whether an importer of monofásico products can fully offset the import PIS/COFINS credit against the sell-side debit is contested (see SC COSIT 195/2021, 46/2023). The model assumes the offset works under Lucro Real; confirm before treating it as banked.
19. Mercosul origin / ACE-74 — and the Paraguay free-zone trap
Section titled “19. Mercosul origin / ACE-74 — and the Paraguay free-zone trap”Brazil and Argentina trade autos under ACE-74 (Acordo de Complementação Econômica nº 74), the bilateral automotive agreement inside the Mercosul framework. Goods with Mercosul origin move between member states at preferential (near-zero) tariff instead of the 35% II. Origin is the prize — if a vehicle qualifies as Mercosul-origin, it dodges the import duty.
This is exactly where a tempting shortcut backfires.
The Paraguay free-zone trap. Paraguay’s maquila regime (1% single tax, 0% income tax, cheap energy — see the BRPY/Paraguay research) looks like a way to assemble cheaply and then ship into Brazil duty-free as a “Mercosul” good. It does not work for origin. ACE-74 (and the Mercosul origin rules) exclude goods produced in free zones / special customs areas from conferring Mercosul origin. A car assembled in a Paraguayan maquila free zone does not acquire Mercosul origin and therefore does not get the preferential tariff into Brazil — it is treated as an extra-bloc import and hit with the full II.
The strategic consequence for BAW (and the reason the Lecar model assembles in Brazil):
- Maquila-PY is excellent for cost (labor, energy, the 1% tax) but useless for Brazilian tariff origin. Use it for export to third markets, not as a Brazil-import dodge.
- The margin is in assembling in Brazil under MOVER (§21), not in a free-zone arbitrage. Brazilian local content + MOVER habilitação is what legitimately moves the II down — through the SKD/CKD ladder — without the origin trap.
🚩 Gap to close. The precise ACE-74 article excluding free zones, current local-content / regional-content thresholds for Mercosul auto origin, and whether any non-free-zone PY manufacturing route could qualify — these need a primary-source trade-law pass before this goes to BAW as final. The directional conclusion (maquila-PY ≠ Mercosul origin) is firm; the citation is the gap.
20. State ICMS incentives — Espírito Santo (12% / Sooretama)
Section titled “20. State ICMS incentives — Espírito Santo (12% / Sooretama)”Because ICMS is a state tax (§18), states compete for industry with ICMS incentives. The Lecar entry is structured around one: Espírito Santo.
- The factory is in Sooretama/ES — a cravada (locked) decision (
lecar/CLAUDE.md: “ICMS 12%, MOVER ativo”). - ES applies 12% ICMS on motor vehicles (Lei ES 7.000/2001 art. 20 —
config.toml, status confirmado), materially below the ~17–18% internal rate common in other states. On a six-figure landed value, the spread between 12% and 18% is large per unit. - ES has historically run import-attraction programs (e.g. FUNDAP-style mechanisms) routing import operations through its ports — part of why ES is a recurring base for auto importers. 🚩 The specific current ES program, its conditions, and any clawback/eligibility rules are a gap to fill before final.
Why this is a decision, not a detail. The state you clear and sell in sets the single largest variable tax on the car. Choosing ES (12%) over SP (18%) was an explicit Lecar decision (Feb/2026,
briefing-tributario.md), and it stacks with MOVER (next section) and the factory location. For BAW evaluating partner-vs-own-entry (Part V §29), this is one of the assets a local partner (Lecar) already holds — the ES base + MOVER habilitação are not free to replicate.
21. CBU → SKD → CKD: the localization ladder
Section titled “21. CBU → SKD → CKD: the localization ladder”The same vehicle can enter Brazil at three levels of “doneness,” and the tax burden falls as local assembly rises. This is the central lever of the whole entry economics.
| Mode | What ships | Brazil does | Tax effect | Lecar status |
|---|---|---|---|---|
| CBU (Completely Built Up) | Finished car | Nothing — just imports & sells | Full II (35%) + full IPI. Highest tax, lowest local effort. | Current model (config.toml modo = "CBU"). “CBU first, SKD later” (lecar/CLAUDE.md). |
| SKD (Semi-Knocked Down) | Largely-assembled kit (some sub-assembly left) | Light assembly in the ES plant | Reduced II + IPI via MOVER habilitação. | Modeled but not yet active (config.toml regime_skd_ativo = false; ii_skd_pct = 10.0, status em_negociacao). |
| CKD (Completely Knocked Down) | Full parts kit | Full assembly in Brazil | Deepest II + IPI reduction; counts as local manufacturing. Highest local effort/cost. | Modeled (config.toml [skd_ckd]: II reduction 50%, IPI reduction 80%, assembly cost R$2,500/unit). |
How the model encodes the ladder (config.toml, parameters — Lecar working assumptions, not statutory constants):
- MOVER block (
[mover]): habilitado = true; an SKD II of 10% (vs 35% CBU), status em_negociacao — i.e. the headline shortcut is dropping II from 35% to ~10% by assembling under MOVER. - SKD/CKD block (
[skd_ckd]): II reduction 50%, IPI reduction 80%, plus a per-unit assembly cost of R$2,500. The simulator addscusto_montagemto the cost only whenmodo != "CBU"(cmv.py).
The trade-off is cost-vs-tax, and it is not free. Moving down the ladder cuts tax but adds local assembly cost, capex, working capital, homologation of local-content, and time. The “right” rung depends on volume: at low volume CBU’s simplicity wins; as the ramp climbs (
config.tomlramp → 165/month), the II saved on each unit pays for the assembly line. The simulator is built precisely to find that crossover for a given FX/FOB/volume.
The unifying point: MOVER is the engine of the ladder. MOVER (Mobilidade Verde e Inovação, Lei 14.902/2024, administered by MDIC — homologacao/requirements.md §2bis.4) is the program that grants the II/IPI reductions for SKD/CKD local production, with enhanced tiers for hybrids and BEVs (the reason Lecar prefers the hybrid 212 variant — briefing-tributario.md). MOVER is covered in Part III §15 as a homologation/local-content program; here it is the fiscal mechanism that makes assembling-in-Brazil — not the Paraguay free zone (§19) — the place where the margin lives. 🚩 Current MOVER benefit schedules update annually; confirm rates with MDIC (requirements.md).
22. Backward pricing — from target retail price to landed cost
Section titled “22. Backward pricing — from target retail price to landed cost”Lecar does not price forward (cost → margin → price). The Brazilian market sets the price; the model works backward from a target retail price to discover the maximum landed cost the deal can absorb. This is the “backward pricing” method, and it is how the simulator is wired (cmv.py).
The method
Section titled “The method”1. Start from the target PVP (consumer price) PVP = R$365,000 (anchored to the Tank 300 band: R$350k–380k — config.toml [precos])
2. Back out the dealer's margin (repasse, not commission): dealer price (preco_rev) = PVP / (1 + dealer markup) = 365,000 / 1.22 = R$299,180 ← the importer's revenue
3. The importer's gross margin lives between dealer price and CMV: gross profit = preco_rev − CMV gross margin% = gross profit / preco_rev
4. CMV (all-in cost) = CIF + II + clearance expenses + post-clearance costs + after-sales fund + recall provision (credits — IPI, PIS, COFINS, ICMS — are NOT in CMV; they are fiscal currency)The chain runs right-to-left: the consumer price is fixed by the competitor (Tank 300, R$350–380k — Part I §3), the dealer markup (22%, config.toml) is fixed by how dealers earn (Part V §25), and what’s left is the room the importer has. The landed cost is the output, not the input — and the import-tax stack (§18) is what eats most of that room.
What the simulator answers with this
Section titled “What the simulator answers with this”Because pricing is backward, the operationally useful questions invert too. baw-tui solves for them directly (cmv.py, _fob_maximo):
- “What is the maximum FOB I can pay and still hit 15% / 20% / 25% gross margin?” (
fob_max_15/20/25) — i.e. how hard to negotiate the Chinese factory price. - “What happens to my margin if FX goes to 6.50?” — FOB is in USD; the FX line (
config.toml usd_brl = 5.75) is the single biggest swing factor, and it is outside anyone’s control. - “How much extra capital for 150 units?” — the cash-out (gross tax stack + expenses, per §18) times the ramp.
The honest reference point: the 1.85 factor. The legacy planning spreadsheet used a single empirical rule — landed cost ≈ FOB(BRL) × 1.85 — treating all import taxes as definitive cost (
config.toml fator_empirico = 1.85;pesquisa-pis-cofins.md§1). The simulator keeps this as a sanity check (fator_calculadovsfator_empiricoincmv.py) but computes the real number tax-by-tax with credit recovery. The difference is material: with PIS/COFINS credit recovered, acquisition cost drops from ~R$233–258k to ~R$212k per unit (pesquisa-pis-cofins.md§1). The lesson for the executive: never price off a flat multiplier — the credit mechanics change the answer by tens of thousands of reais per car. Use the simulator.
What this part costs and how long it takes
Section titled “What this part costs and how long it takes”- Tax stack (CBU): roughly II 35% + IPI 18.81% + PIS 2.10% + COFINS 9.65% + ICMS 12% cascaded — a nationalization factor near the ~1.85 reference, before credit recovery brings the true cost down. Live number: the simulator.
- Credit recovery: 30–90 days for federal credits via offset; ICMS credited against the sell-side debit. Plan working capital as if credits did not exist short-term.
- The lever: ICMS state choice (ES 12%) + the SKD/CKD ladder under MOVER are where the burden actually moves — not a free-zone shortcut (§19).
- Time: RADAR/Habilitação + NCM classification before first import; each clearance is days-to-weeks once set up; MOVER habilitação and SKD/CKD line stand-up are months (Part III).
🚩 Gaps carried into final: (1) IPI rate reconciliation note left in place (config 18.81% confirmed vs legacy 13% estimate); (2) PIS/COFINS monofásico credit-offset position (SC COSIT); (3) ACE-74 free-zone exclusion primary citation + Mercosul auto local-content thresholds; (4) current ES import-attraction program conditions; (5) current MOVER benefit schedule (MDIC, updated annually); (6) interstate (4%) vs internal ICMS split in the distribution flow.