| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-fiscal-rule |
| GIT | |
| GIT | https://github.com/OCA/account-fiscal-rule.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-fiscal-rule/tree/13.0/account_avatax |
| VERSION | |
| VERSION | 3.4.4 |
| CATEGORY | |
| CATEGORY | Accounting |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Fabrice Henrion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Fabrice Henrion |
| COMMITTERS | |
| COMMITTERS | Pedro M. Baeza, GitHub, Daniel Reis, Bhavesh Odedra, oca-travis, OCA-git-bot, Atchuthan, Sodexis, Steven Campbell |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-fiscal-rule |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:34:11 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - sale_stock - sale - sales_team - payment - utm - stock_account - stock - barcodes - base_geolocalize |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
Avalara |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
exemption_code_tree_view |
exemption.code.tree.view | exemption.code | tree | New |
invoice_form_view_editable_field |
invoice.form.view.editable | account.move | field | Inherits view_move_form_inherit_1 |
view_avalara_salestax_address_validate |
Address Validatation | avalara.salestax.address.validate | form | New |
view_avalara_salestax_form |
avalara.salestax.form | avalara.salestax | form | New |
view_avalara_salestax_ping |
Test Connection | avalara.salestax.ping | form | New |
view_avalara_salestax_tree |
avalara.salestax.tree | avalara.salestax | tree | New |
view_fiscal_position_form_avatax |
account.fiscal.position form add Avatax | account.fiscal.position | field | Inherits account.view_account_position_form |
view_move_form_inherit_1 |
account.move.form.inherit | account.move | button | Inherits account.view_move_form |
view_partner_details_form_inherit1 |
res.partner.details.form.inherit1 | res.partner | xpath | Inherits base.view_partner_form |
view_product_category_form_avatax_inherit |
product.category.form.avatax.inherit | product.category | xpath | Inherits product.product_category_form_view |
view_product_normal_form_avatax_inherit |
product.normal.form.avatax | product.template | xpath | Inherits product.product_template_form_view |
view_product_tax_code_form |
product.tax.code.form | product.tax.code | form | New |
view_product_tax_code_tree |
product.tax.code.tree | product.tax.code | tree | New |
view_tax_form_avatax |
account.tax.form.avatax | account.tax | field | Inherits account.view_tax_form |
is_avatax
Boolean
string='Use Avatax API'
No public methods.
avatax_amount
Float
copy=False
string='AvaTax'
exemption_code
Char
compute=_compute_onchange_exemption
help='It show the customer exemption number'
readonly=False
store=True
args: 'Exemption Number'
exemption_code_id
Many2one → exemption.code
compute=_compute_onchange_exemption
help='It show the customer exemption code'
readonly=False
store=True
args: 'exemption.code', 'Exemption Code'
exemption_locked
Boolean
help="Exemption code won't be automatically changed, for instance, when changing the Customer."
invoice_doc_no
Char
help='Reference of the invoice'
readonly=True
states={'draft': [('readonly', False)]}
args: 'Source/Ref Invoice No'
location_code
Char
readonly=True
states={'draft': [('readonly', False)]}
args: 'Location Code'
tax_address_id
Many2one → res.partner
compute='_compute_tax_address_id'
args: 'res.partner', 'Tax Shipping Address'
tax_on_shipping_address
Boolean
default=True
args: 'Tax based on shipping address'
warehouse_id
Many2one → stock.warehouse
avatax_commit_taxes(self)
avatax_compute_taxes(self, commit=False)
button_draft(self)
get_origin_tax_date(self)
is_avatax_calculated(self)
onchange_reset_avatax_amount(self)
onchange_warehouse_id(self)
post(self)
avatax_amt_line
Float
copy=False
string='AvaTax Line'
onchange_reset_tax_amt(self)
is_avatax
Boolean
compute_all(self, price_unit, currency=None, quantity=1.0, product=None, partner=None, is_refund=False, handle_price_include=True)
get_avalara_tax(self, tax_rate, doc_type)
account_number
Char
help='Account Number provided by AvaTax'
required=True
args: 'Account Number'
active
Boolean
default=True
help='Uncheck the active field to hide the record'
args: 'Active'
auto_generate_customer_code
Boolean
default=True
help="This will generate customer code for the customer used in the transaction, if it doesn't have one already. Each code is unique per customer. When this is disabled, you will have to manually go to each customer and manually generate their customer code. This is required for Avatax and is only generated one time."
args: 'Automatically generate missing customer code'
company_code
Char
help='The company code as defined in the Admin Console of AvaTax'
required=True
args: 'Company Code'
company_id
Many2one → res.company
default=<expr>
help='Company which has subscribed to the AvaTax service'
required=True
args: 'res.company', 'Company'
country_ids
Many2many → res.country
default=_get_avatax_supported_countries
help='Countries where address validation will be used'
args: 'res.country', 'avalara_salestax_country_rel', 'avalara_salestax_id', 'country_id', 'Countries'
default_shipping_code_id
Many2one → product.tax.code
help='The default shipping code which will be passed to Avalara'
args: 'product.tax.code', 'Default Shipping Code'
disable_address_validation
Boolean
help='Check to disable address validation'
args: 'Disable Address Validation'
disable_tax_calculation
Boolean
default=True
help='No tax calculation requests will be sent to the AvaTax web service.'
args: 'Disable AvaTax Calculation'
disable_tax_reporting
Boolean
help='No transactions will be recorded in the Avatax service.'
args: 'Disable Document Recording/Commiting'
enable_immediate_calculation
Boolean
help='Tax is computed immediately, as document lines are being added. Warning: will cause heavy traffic on the Avatax service.'
args: 'Immediate AvaTax Calculation'
force_address_validation
Boolean
help='Only compute taxes if addresses were validated by the Avatax service'
args: 'Require Validated Addresses'
license_key
Char
help='License Key provided by AvaTax'
required=True
args: 'License Key'
logging
Boolean
help='Enables detailed AvaTax transaction logging within application'
args: 'Log API Request Details'
logging_response
Boolean
help='Enables detailed AvaTax transaction logging within application'
args: 'Log API Response Details'
request_timeout
Integer
default=300
help='Defines AvaTax request time out length, AvaTax best practices prescribes default setting of 300 seconds'
args: 'Request Timeout'
result_in_uppercase
Boolean
help='Check is address validation results desired to be in upper case'
args: 'Return validation results in upper case'
service_url
Selection
default='https://rest.avatax.com/api/v2'
help='The url to connect with'
string='Service URL'
args: [('https://sandbox-rest.avatax.com/api/v2', 'REST API Test'), ('https://rest.avatax.com/api/v2', 'REST API Production')]
upc_enable
Boolean
help='Allows ean13 to be reported in place of Item Reference as upc identifier.'
args: 'Enable UPC Taxability'
validation_on_save
Boolean
help='Automatically validates addresses when they are created or modified when Customer profile is saved.'
args: 'Automatic Address Validation'
commit_transaction(self, doc_code, doc_type)
create_transaction(self, doc_date, doc_code, doc_type, partner, ship_from_address, shipping_address, lines, user=None, exemption_number=None, exemption_code_name=None, commit=False, invoice_date=None, reference_code=None, location_code=None, is_override=None, currency_id=None, ignore_error=None)
get_avatax_rest_service(self)
ping(self)
unvoid_transaction(self, doc_code, doc_type)
void_transaction(self, doc_code, doc_type)
city
Char
country
Char
date_validation
Date
original_city
Char
readonly=True
args: 'Original City'
original_country
Char
readonly=True
args: 'Original Country'
original_state
Char
readonly=True
args: 'Original State'
original_street
Char
readonly=True
args: 'Original Street'
original_street2
Char
readonly=True
args: 'Original Street2'
original_zip
Char
readonly=True
args: 'Original Zip'
partner_latitude
Float
partner_longitude
Float
state
Char
street
Char
street2
Char
validation_method
Char
zip
Char
accept_valid_address(self)
default_get(self, fields)
name
Char
default_get(self, fields)
ping(self)
code
Char
name
Char
required=True
args: 'Name'
name_get(self)
applicable_tax_code_id
Many2one → product.tax.code
compute=_compute_applicable_tax_code
args: 'product.tax.code', 'Applicable AvaTax Code'
tax_code_id
Many2one → product.tax.code
No public methods.
description
Char
name
Char
required=True
args: 'Code'
type
Selection
help='Type of tax code as defined in AvaTax'
required=True
args: [('product', 'Product'), ('freight', 'Freight'), ('service', 'Service'), ('digital', 'Digital'), ('other', 'Other')], 'Type'
No public methods.
applicable_tax_code_id
Many2one → product.tax.code
compute=_compute_applicable_tax_code
args: 'product.tax.code', 'Applicable AvaTax Code'
tax_code_id
Many2one → product.tax.code
help='AvaTax Product Tax Code'
args: 'product.tax.code', 'Product AvaTax Code'
No public methods.
No new fields.
Public methods (1)get_avatax_config_company(self)
customer_code
Char
copy=False
args: 'Customer Code'
date_validation
Date
copy=False
help='The date the address was last validated by AvaTax and accepted'
readonly=True
args: 'Last Validation Date'
exemption_code_id
Many2one → exemption.code
deprecated=True
args: 'exemption.code', 'Exemption Code (Deprecated)'
exemption_number
Char
deprecated=True
args: 'Exemption Number (Deprecated)'
property_exemption_code_id
Many2one → exemption.code
company_dependent=True
help='The type of exemption granted'
args: 'exemption.code', 'Exemption Code'
property_exemption_number
Char
company_dependent=True
help='The State identification number relevant fot the exemption'
args: 'Exemption Number'
property_tax_exempt
Boolean
company_dependent=True
help='This company or address can claim for tax exemption'
args: 'Is Tax Exempt'
tax_exempt
Boolean
deprecated=True
args: 'Is Tax Exempt (Deprecated))'
validated_on_save
Boolean
help='Indicates if the address is already validated on save before calling the wizard'
args: 'Validated On Save'
validation_method
Selection
copy=False
help='It gets populated when the address is validated by the method'
readonly=True
args: [('avatax', 'AVALARA'), ('usps', 'USPS'), ('other', 'Other')], 'Address Validation Method'
button_avatax_validate_address(self)
check_exemption_number(self)
create(self, vals)
generate_cust_code(self)
get_country_from_code(self, code)
get_state_from_code(self, state_code, country_code)
get_valid_address_vals(self, validation_on_save=False)
multi_address_validation(self, validation_on_save=False)
onchange_tax_exemption(self)
write(self, vals)