Paraguay - Base Localization

l10n_py_base
REPOSITORY
REPOSITORYOCA/l10n-paraguay
GIT
GIThttps://github.com/OCA/l10n-paraguay.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-paraguay/tree/16.0/l10n_py_base
VERSION
VERSION 1.2.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), KMEE
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), KMEE
COMMITTERS
COMMITTERSmileo, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-paraguay
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:12:07
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
    - base_address_extended
    - l10n_latam_base
    - contacts
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - base_vat
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Base localization module for Paraguay. Provides geographic data (departments,
cities, neighborhoods), RUC validation, and fiscal fields on partners.

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_py_base_res_partner_address l10n_py_base.res.partner.address res.partner form New
l10n_py_base_res_partner_form l10n_py_base.res.partner.form res.partner xpath Inherits base.view_partner_form
view_l10n_py_neighborhood_form l10n_py.neighborhood.form l10n_py.neighborhood form New
view_l10n_py_neighborhood_search l10n_py.neighborhood.search l10n_py.neighborhood search New
view_l10n_py_neighborhood_tree l10n_py.neighborhood.tree l10n_py.neighborhood tree New
Models touched (5)

New fields (6)
  • city_id Many2one → res.city
    help='Ciudad a la que pertenece el barrio' ondelete='cascade' required=True string='Ciudad' args: 'res.city'
  • code Char
    help='Código del barrio' string='Código'
  • country_id Many2one → res.country
    help='País al que pertenece el barrio' readonly=True related='city_id.country_id' store=True string='País' args: 'res.country'
  • name Char
    help='Nombre del barrio' required=True string='Nombre'
  • state_id Many2one → res.country.state
    help='Departamento al que pertenece el barrio' readonly=True related='city_id.state_id' store=True string='Departamento' args: 'res.country.state'
  • zipcode Char
    help='Código postal del barrio' string='Código Postal'
Public methods (0)

No public methods.

New fields (1)
  • l10n_py_code Char
    help='Código de la ciudad según SET (Subsecretaría de Estado de Tributación)' size=4 string='Código SET'
Public methods (0)

No public methods.

New fields (1)
  • country_id Many2one
    default=<expr>
Public methods (0)

No public methods.

New fields (1)
  • l10n_py_code Integer
    help='Código del departamento según SET (Subsecretaría de Estado de Tributación)' string='Código SET'
Public methods (0)

No public methods.

New fields (12)
  • country_id Many2one → res.country
    comodel_name='res.country' default=<expr>
  • l10n_py_activity_description Char
    help='Descripción de la actividad económica principal' string='Actividad Económica'
  • l10n_py_city_code Char
    help='Código de la ciudad según SET' readonly=True related='city_id.l10n_py_code' store=True string='Código Ciudad SET'
  • l10n_py_department_code Integer
    help='Código del departamento según SET' readonly=True related='state_id.l10n_py_code' store=True string='Código Departamento SET'
  • l10n_py_doc_number Char
    help='Número de documento de identidad para no contribuyentes (SIFEN D025)' size=20 string='Número de Documento'
  • l10n_py_doc_type Selection
    help='Tipo de documento de identidad para no contribuyentes (SIFEN D024)' string='Tipo de Documento de Identidad' args: [('1', 'Cédula de Identidad'), ('2', 'Pasaporte'), ('3', 'Carnet de Residencia'), ('4', 'Innominado')]
  • l10n_py_fantasy_name Char
    help='Nombre comercial o de fantasía' string='Nombre de Fantasía'
  • l10n_py_neighborhood_id Many2one → l10n_py.neighborhood
    comodel_name='l10n_py.neighborhood' domain="[('city_id', '=', city_id)]" help='Barrio o distrito del contacto' string='Barrio'
  • l10n_py_neighborhood_name Char
    readonly=True related='l10n_py_neighborhood_id.name' store=True string='Nombre del Barrio'
  • l10n_py_ruc Char
    compute='_compute_l10n_py_ruc_fields' help='Registro Único del Contribuyente (sin dígito verificador)' inverse='_inverse_l10n_py_ruc' size=20 store=True string='RUC'
  • l10n_py_ruc_dv Char
    compute='_compute_l10n_py_ruc_fields' help='Dígito verificador del RUC' size=1 store=True string='DV'
  • l10n_py_taxpayer_type Selection
    help='Tipo de contribuyente según la SET' string='Tipo de Contribuyente' args: [('1', 'Contribuyente'), ('2', 'No Contribuyente')]
Public methods (3)
  • check_vat_py(self, vat)
    Validate Paraguay RUC/VAT number. Accepts formats: XXXXXXXX-D (RUC with DV) or any identification number.
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, values)