OdooWiki OCA HUB

Paraguay - Maquila Operations

l10n_py_maquila_ops folder_open OCA/l10n-paraguay open_in_new
Localization License: AGPL-3

Operations of Paraguay's Maquila regime (Ley 7547/2025):

  • Temporary admission of goods with a customs guarantee, CIF control and per-line remaining balance. The stay follows Ley 7547/2025 Art. 14 by type of good: raw materials and inputs 12 months from the import date (extendable once, up to the same period); containers and trailer boxes 12 months from the arrival declaration (no extension); other goods while the program is in force.
  • Export dispatches with traceability to the source admissions.
  • Customs guarantees (bank, insurance, deposit, mortgage), per operation or global (Decreto 5714/2026 Art. 28), with available balance control and automatic expiry. Form and validity of the guarantee follow art. 293 of the Customs Code and are not validated by the module.
  • Fiscal positions for temporary admission and exempt export.
  • Wizards for the Tributo Único Maquilador (TUM, 1%), the IVA credit (compensate/transfer) and the VAN period computation.
  • Domestic-market sales control (Ley 7547/2025 Art. 18): only pure maquila is capped, at 10% of what it exported in the last year. A pure maquila with no exports in that period has a zero cap and cannot sell domestically, unless a Maquila manager sets an explicit, logged override on the order.

All monetary comparisons and accounting entries are converted to the company currency.

Open legal questions (not decided by the module): the law caps sales at 10% of the "volumen exportado en el ultimo ano"; the module measures the exported FOB value (quantities of different products and units cannot be added) and reads "ultimo ano" as the previous calendar year. Both readings must be confirmed with the Secretaria Ejecutiva / DNIT.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Manage Paraguay's Maquila temporary admissions, export dispatches and customs guarantees in Odoo, with deadline control, guarantee balance checks and the TUM 1% and IVA credit wizards.

This module adds the day-to-day operations of the Paraguayan Maquila regime on top of the base program data.

  • Temporary admissions: record the dispatch number, CNIME certificate, type of good, import and arrival dates, CIF amount, supplier and lines with product, lot, quantity, NCM code and FOB value. The deadline is computed automatically: 12 months from the import date for raw materials and inputs, 12 months from the arrival declaration for containers and trailer boxes, or the program benefit expiry for machinery and other goods. Buttons let you Admit, Start Production, Extend 12 Months (raw materials only, once) and Close.
  • Export dispatches: register the export date, incoterm, certificate of origin and lines, and link each dispatch to its source admissions for traceability. Confirming requires at least one source admission.
  • Customs guarantees: bank, insurance, deposit or mortgage, per operation or global, with amount, validity dates and automatic expiry by a scheduled job. Used and available amounts are computed from the admissions they cover, and admitting checks that the guarantee is active on the date and has enough available balance.
  • Sales and purchases: a Maquila program can be set on orders, which applies the temporary admission or exempt export fiscal position. For pure maquila, confirming a domestic sale is blocked when it would exceed the Art. 18 cap (percentage of prior-year exports); a Maquila manager can override it with a reason, logged in the chatter.
  • Accounting: invoices and payments can be flagged with the program, and two wizards generate journal entries for the TUM 1% and for IVA credit compensation or transfer.

Depends on

l10n_py_maquila_baseaccountstockpurchasesale_stockmail

Required by other modules

Menus it adds

OperationsAdmissionsExportsGuaranteesFiscalTUM CalculationTax Credit (IVA)
Models and fields (14)
  • sale.order · extends an existing modell10n_py_maquila_type (Maquila Type), l10n_py_is_maquila_export, l10n_py_maquila_program_id (Maquila Program), l10n_py_maquila_cap_override (Override Domestic Sales Cap), l10n_py_maquila_cap_override_reason (Override Reason)
  • account.move · extends an existing modell10n_py_is_maquila_export (Maquila Export), l10n_py_maquila_program_id (Maquila Program)
  • stock.picking · extends an existing modell10n_py_maquila_export_id (Maquila Export), l10n_py_maquila_admission_id (Maquila Admission)
  • purchase.order · extends an existing modell10n_py_maquila_program_id (Maquila Program)
  • account.payment · extends an existing modell10n_py_remittance_type (Remittance Type), l10n_py_is_maquila_exempt (Maquila Exempt), l10n_py_maquila_program_id (Maquila Program)
  • purchase.order.line · extends an existing modell10n_py_origin_type (Origin Type)
  • l10n_py.maquila.export · new modelname, state, incoterm, line_ids (Lines), company_id, program_id, currency_id, date_export, picking_ids (Pickings), admission_ids (Source Admissions), origin_certificate (Certificate of Origin)
  • l10n_py.maquila.program · extends an existing modelexport_ids (Exports), export_count, admission_ids (Admissions), guarantee_ids (Guarantees), admission_count, guarantee_count
  • l10n_py.maquila.admission · new modelname (Dispatch Number), state, line_ids (Lines), good_type, amount_cif (CIF Amount), company_id, program_id, currency_id, picking_ids (Pickings), supplier_id (Supplier), date_arrival (Arrival Declaration Date), guarantee_id (Customs Guarantee), date_deadline (Deadline), date_extended (Extended Deadline), date_admission (Import Date), cnime_certificate (CNIME Certificate)
  • l10n_py.maquila.guarantee · new modelname, scope, state, amount, issuer, date_end, company_id, date_start, program_id, amount_used, currency_id, admission_ids (Admissions), guarantee_type, amount_available
  • l10n_py.maquila.tum.wizard · new modeltum_base (TUM Base), tum_rate (TUM Rate %), period_end, program_id, tum_amount (TUM Amount), van_amount (VAN Amount), currency_id, period_start, debit_account_id (TUM Expense Account), credit_account_id (TUM Payable Account), export_invoice_amount
  • l10n_py.maquila.export.line · new modeluom_id (Unit of Measure), quantity, export_id, fob_value (FOB Value), product_id, currency_id
  • l10n_py.maquila.admission.line · new modellot_id (Lot/Serial), uom_id (Unit of Measure), ncm_code (NCM Code), quantity, fob_value (FOB Value), product_id, currency_id, admission_id, qty_consumed, qty_remaining
  • l10n_py.maquila.tax.credit.wizard · new modelamount, program_id, action_type, currency_id, debit_account_id (Debit Account), credit_account_id (Credit Account), transfer_partner_id (Transfer To)

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 2 confirmed, 7 with no information of 9 versions.

Sources · Odoo 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/l10n-paraguay.

terminal Installation and usage

OCA documentation · Odoo 19.0
  • Register a customs guarantee for the program.
  • Create a temporary admission with its CIF amount and lines; admitting it checks the CNIME certificate and that the guarantee covers the CIF (converted to the guarantee currency). Pick the type of good (it defines the Art. 14 deadline); for containers and trailer boxes also fill in the arrival declaration date. Extend 12 Months is only available for raw materials and inputs.
  • Create an export and link it to its source admissions before confirming.
  • Use the TUM, IVA credit and VAN wizards to compute and post the corresponding entries.

The two fiscal positions shipped in this module (temporary admission and exempt export) carry no tax mapping: the actual IVA/customs tax mapping depends on the chart of accounts in use and is left to the integrator.

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.