TIP: You can type at any time to perform a new search.
Magento Connector
magentoerpconnect · OCA/connector-magento
- Repository
- OCA/connector-magento · module folder · Try on Runboat
- Module version
- 3.0.0
- Category
- Connector
- Folder size
- 3.87 MB
- License
- AGPL-3
- Application
- Yes
- Auto-installable
- No
- Website
- http://www.odoo-magento-connector.com
- Last tracking update
- 2026-08-07 07:10:02
- Authors
- Camptocamp, Akretion, Odoo Community Association (OCA)
- Maintainers
- Camptocamp, Akretion, Odoo Community Association (OCA)
- Committers
- Guewen Baconnier, Pedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), Dave Lasley, Justin Scott
- Odoo dependencies
- Python dependencies
- magento, requests
- System dependencies
- None
- Required by
- customize_example, magentoerpconnect_catalog, magentoerpconnect_export_partner, magentoerpconnect_options_active, magentoerpconnect_order_comment, magentoerpconnect_pricing, server_env_magentoerpconnect
- Description
Code Analysis ⓘ
Views touched (29)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
payment_method_view_form |
payment.method | form | Inherits connector_ecommerce.payment_method_view_form | |
product_normal_form_view |
product.product.form | product.product | form | Inherits connector_base_product.product_normal_form_view |
view_invoice_magento_form |
account.invoice.magento.form | account.invoice | form | Inherits connector_ecommerce.view_invoice_connector_form |
view_magento_account_invoice_form |
magento.account.invoice.form | magento.account.invoice | form | New |
view_magento_account_invoice_tree |
magento.account.invoice.tree | magento.account.invoice | tree | New |
view_magento_address_form |
magento.address.form | magento.address | form | New |
view_magento_address_tree |
magento.address.tree | magento.address | tree | New |
view_magento_backend_form |
magento.backend.form | magento.backend | form | New |
view_magento_backend_tree |
magento.backend.tree | magento.backend | tree | New |
view_magento_config_settings |
Connector Settings | connector.config.settings | Inherits connector.view_connector_config_settings | |
view_magento_delivery_carrier_form |
magento.delivery.carrier.form | delivery.carrier | form | Inherits delivery.view_delivery_carrier_form |
view_magento_product_category_form |
magento.product.category.form | magento.product.category | form | New |
view_magento_product_category_tree |
magento.product.category.tree | magento.product.category | tree | New |
view_magento_product_form |
magento.product.product.form | magento.product.product | form | New |
view_magento_product_tree |
magento.product.product.tree | magento.product.product | tree | New |
view_magento_res_partner_form |
magento.res.partner.form | magento.res.partner | form | New |
view_magento_res_partner_tree |
magento.res.partner.tree | magento.res.partner | tree | New |
view_magento_stock_picking_out_form |
magento.stock.picking.form | magento.stock.picking | form | New |
view_magento_stock_picking_out_tree |
magento.stock.picking.tree | magento.stock.picking | tree | New |
view_magento_store_form |
magento.store.form | magento.store | form | New |
view_magento_store_tree |
magento.store.tree | magento.store | tree | New |
view_magento_storeview_form |
magento.storeview.form | magento.storeview | form | New |
view_magento_storeview_tree |
magento.storeview.tree | magento.storeview | tree | New |
view_magento_website_form |
magento.website.form | magento.website | form | New |
view_magento_website_tree |
magento.website.tree | magento.website | tree | New |
view_partner_category_form |
res.partner.category.form | res.partner.category | form | Inherits base.view_partner_category_form |
view_partner_form |
res.partner.form | res.partner | form | Inherits connector.view_partner_connector_form |
view_product_category_form |
product.category.form.magento | product.category | form | Inherits product.product_category_form_view |
view_stock_picking_out_magento_form |
stock.picking.magento.form | stock.picking | form | Inherits connector_ecommerce.view_stock_picking_out_connector_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (25)
New fields (1)
-
magento_bind_idsOne2many → magento.account.invoicecomodel_name='magento.account.invoice'inverse_name='openerp_id'string='Magento Bindings'
No public methods.
New fields (2)
-
module_magentoerpconnect_export_partnerBooleanhelp='This installs the module magentoerpconnect_export_partner.'string='Export Partners to Magento (experimental)' -
module_magentoerpconnect_pricingBooleanhelp='Prices are set in OpenERP and exported to Magento.\n\nThis installs the module magentoerpconnect_pricing.'string='Prices are managed in OpenERP with pricelists'
No public methods.
New fields (4)
-
magento_carrier_codeCharcompute='_compute_carrier_code'string='Magento Base Carrier Code' -
magento_codeCharrequired=Falsestring='Magento Carrier Code' -
magento_export_trackingBooleandefault=Truestring='Export tracking numbers' -
magento_tracking_titleCharrequired=Falsestring='Magento Tracking Title'
No public methods.
New fields (2)
-
magento_order_idMany2one → magento.sale.ordercomodel_name='magento.sale.order'ondelete='set null'string='Magento Sale Order' -
openerp_idMany2one → account.invoicecomodel_name='account.invoice'ondelete='cascade'required=Truestring='Invoice'
No public methods.
New fields (9)
-
backend_idMany2one → magento.backendcomodel_name='magento.backend'readonly=Truerelated='magento_partner_id.backend_id'required=Falsestore=Truestring='Magento Backend' -
created_atDatetimereadonly=Truestring='Created At (on Magento)' -
is_default_billingBooleanstring='Default Invoice' -
is_default_shippingBooleanstring='Default Shipping' -
is_magento_order_addressBooleanstring='Address from a Magento Order' -
magento_partner_idMany2one → magento.res.partnercomodel_name='magento.res.partner'ondelete='cascade'required=Truestring='Magento Partner' -
openerp_idMany2one → res.partnercomodel_name='res.partner'ondelete='cascade'required=Truestring='Partner' -
updated_atDatetimereadonly=Truestring='Updated At (on Magento)' -
website_idMany2one → magento.websitecomodel_name='magento.website'readonly=Truerelated='magento_partner_id.website_id'store=Truestring='Magento Website'
No public methods.
New fields (19)
-
admin_locationCharstring='Admin Location' -
auth_basic_passwordCharhelp='Basic access authentication web server side password'string='Basic Auth. Password' -
auth_basic_usernameCharhelp='Basic access authentication web server side username'string='Basic Auth. Username' -
company_idMany2one → res.companycomodel_name='res.company'readonly=Truerelated='warehouse_id.company_id'string='Company' -
default_category_idMany2one → product.categorycomodel_name='product.category'help='If a default category is selected, products imported without a category will be linked to it.'string='Default Product Category' -
default_lang_idMany2one → res.langcomodel_name='res.lang'help='If a default language is selected, the records will be imported in the translation of this language.\nNote that a similar configuration exists for each storeview.'string='Default Language' -
import_categories_from_dateDatetimestring='Import categories from date' -
import_products_from_dateDatetimestring='Import products from date' -
locationCharhelp='Url to magento application'required=Truestring='Location' -
passwordCharhelp='Webservice password'string='Password' -
product_binding_idsOne2many → magento.product.productcomodel_name='magento.product.product'inverse_name='backend_id'readonly=Truestring='Magento Products' -
product_stock_field_idMany2one → ir.model.fieldscomodel_name='ir.model.fields'default=_get_stock_field_iddomain="[('model', 'in', ['product.product', 'product.template']), ('ttype', '=', 'float')]"help='Choose the field of the product which will be used for stock inventory updates.\nIf empty, Quantity Available is used.'string='Stock Field' -
sale_prefixCharhelp="A prefix put before the name of imported sales orders.\nFor instance, if the prefix is 'mag-', the sales order 100000692 in Magento, will be named 'mag-100000692' in OpenERP."string='Sale Prefix' -
use_auth_basicBooleanhelp='Use a Basic Access Authentication for the API. The Magento server could be configured to restrict access using a HTTP authentication based on a username and a password.'string='Use HTTP Auth Basic' -
use_custom_api_pathBooleanhelp="The default API path is '/index.php/api/xmlrpc'. Check this box if you use a custom API path, in that case, the location has to be completed with the custom API path "string='Custom Api Path' -
usernameCharhelp='Webservice user'string='Username' -
versionSelectionrequired=Trueselection='select_versions' -
warehouse_idMany2one → stock.warehousecomodel_name='stock.warehouse'help='Warehouse used to compute the stock quantities.'required=Truestring='Warehouse' -
website_idsOne2many → magento.websitecomodel_name='magento.website'inverse_name='backend_id'readonly=Truestring='Website'
-
check_magento_structure(self)@api.multiUsed in each data import. Verify if a website exists for each backend before starting the import. -
import_customer_groups(self)@api.multi -
import_partners(self)@api.multiImport partners from all websites -
import_product_categories(self)@api.multi -
import_product_product(self)@api.multi -
import_sale_orders(self)@api.multiImport sale orders from all store views -
output_recorder(self)@api.multiUtility method to output a file containing all the recorded requests / responses with Magento. Used to generate test data. Should be called with ``erppeek`` for instance. -
select_versions(self)@api.modelAvailable versions in the backend. Can be inherited to add custom versions. Using this method to add a version from an ``_inherit`` does not constrain to redefine the ``version`` field in the ``_inherit`` model. -
synchronize_metadata(self)@api.multi -
update_product_stock_qty(self)@api.multi
New fields (2)
-
backend_idMany2one → magento.backendcomodel_name='magento.backend'ondelete='restrict'required=Truestring='Magento Backend' -
magento_idCharstring='ID on Magento'
No public methods.
New fields (4)
-
descriptionTexttranslate=True -
magento_child_idsOne2many → magento.product.categorycomodel_name='magento.product.category'inverse_name='magento_parent_id'string='Magento Child Categories' -
magento_parent_idMany2one → magento.product.categorycomodel_name='magento.product.category'ondelete='cascade'string='Magento Parent Category' -
openerp_idMany2one → product.categorycomodel_name='product.category'ondelete='cascade'required=Truestring='Product Category'
No public methods.
New fields (9)
-
backordersSelectiondefault='use_default'required=Trueselection=[('use_default', 'Use Default Config'), ('no', 'No Sell'), ('yes', 'Sell Quantity < 0'), ('yes-and-notification', 'Sell Quantity < 0 and Use Customer Notification')]string='Manage Inventory Backorders' -
created_atDateargs: 'Created At (on Magento)' -
magento_qtyFloathelp='Last computed quantity to send on Magento.'string='Computed Quantity' -
manage_stockSelectiondefault='use_default'required=Trueselection=[('use_default', 'Use Default Config'), ('no', 'Do Not Manage Stock'), ('yes', 'Manage Stock')]string='Manage Stock Level' -
no_stock_syncBooleanhelp='Check this to exclude the product from stock synchronizations.'required=Falsestring='No Stock Synchronization' -
openerp_idMany2one → product.productcomodel_name='product.product'ondelete='restrict'required=Truestring='Product' -
product_typeSelectiondefault='simple'required=Trueselection='product_type_get'string='Magento Product Type' -
updated_atDateargs: 'Updated At (on Magento)' -
website_idsMany2many → magento.websitecomodel_name='magento.website'readonly=Truestring='Websites'
-
product_type_get(self)@api.model -
recompute_magento_qty(self)@api.multiCheck if the quantity in the stock location configured on the backend has changed since the last export. If it has changed, write the updated quantity on `magento_qty`. The write on `magento_qty` will trigger an `on_record_write` event that will create an export job. It groups the products by backend to avoid to read the backend informations for each product.
New fields (11)
-
backend_idMany2one → magento.backendcomodel_name='magento.backend'readonly=Truerelated='website_id.backend_id'required=Falsestore=Truestring='Magento Backend' -
consider_as_companyBooleanhelp="An account imported with a 'company' in the billing address is considered as a company.\n The partner takes the name of the company and is not merged with the billing address."string='Considered as company' -
created_atDatetimereadonly=Truestring='Created At (on Magento)' -
emailidCharstring='E-mail address' -
group_idMany2one → magento.res.partner.categorycomodel_name='magento.res.partner.category'string='Magento Group (Category)' -
guest_customerBooleanstring='Guest Customer' -
newsletterBooleanstring='Newsletter' -
openerp_idMany2one → res.partnercomodel_name='res.partner'ondelete='cascade'required=Truestring='Partner' -
taxvatCharstring='Magento VAT' -
updated_atDatetimereadonly=Truestring='Updated At (on Magento)' -
website_idMany2one → magento.websitecomodel_name='magento.website'ondelete='restrict'required=Truestring='Magento Website'
No public methods.
New fields (2)
-
openerp_idMany2one → res.partner.categorycomodel_name='res.partner.category'ondelete='cascade'required=Truestring='Partner Category' -
tax_class_idIntegerstring='Tax Class ID'
No public methods.
New fields (8)
-
magento_order_idIntegerhelp="'order_id' field in Magento"string='Magento Order ID' -
magento_order_line_idsOne2many → magento.sale.order.linecomodel_name='magento.sale.order.line'inverse_name='magento_order_id'string='Magento Order Lines' -
magento_parent_idMany2one → magento.sale.ordercomodel_name='magento.sale.order'string='Parent Magento Order' -
openerp_idMany2one → sale.ordercomodel_name='sale.order'ondelete='cascade'required=Truestring='Sale Order' -
store_idMany2onereadonly=Truerelated='storeview_id.store_id'string='Storeview' -
storeview_idMany2one → magento.storeviewcomodel_name='magento.storeview'string='Magento Storeview' -
total_amountFloatdigits_compute=dp.get_precision('Account')string='Total amount' -
total_amount_taxFloatdigits_compute=dp.get_precision('Account')string='Total amount w. tax'
No public methods.
New fields (5)
-
backend_idMany2onereadonly=Truerelated='magento_order_id.backend_id'required=Falsestore=Truestring='Magento Backend' -
magento_order_idMany2one → magento.sale.ordercomodel_name='magento.sale.order'ondelete='cascade'required=Trueselect=Truestring='Magento Sale Order' -
notesChar -
openerp_idMany2one → sale.order.linecomodel_name='sale.order.line'ondelete='cascade'required=Truestring='Sale Order Line' -
tax_rateFloatdigits_compute=dp.get_precision('Account')string='Tax Rate'
-
create(self, vals)@api.model
New fields (3)
-
magento_order_idMany2one → magento.sale.ordercomodel_name='magento.sale.order'ondelete='set null'string='Magento Sale Order' -
openerp_idMany2one → stock.pickingcomodel_name='stock.picking'ondelete='cascade'required=Truestring='Stock Picking' -
picking_methodSelectionrequired=Trueselection=[('complete', 'Complete'), ('partial', 'Partial')]string='Picking Method'
No public methods.
New fields (7)
-
backend_idMany2one → magento.backendcomodel_name='magento.backend'readonly=Truerelated='website_id.backend_id'required=Falsestore=Truestring='Magento Backend' -
create_invoice_onSelectiondefault='paid'help="Should the invoice be created in Magento when it is validated or when it is paid in OpenERP?\nThis only takes effect if the sales order's related payment method is not giving an option for this by itself. (See Payment Methods)"required=Trueselection=[('open', 'Validate'), ('paid', 'Paid')]string='Create invoice on action' -
nameChar -
send_invoice_paid_mailBooleanhelp='Does the invoice export/creation should send an email notification on Magento side?'string='Send email notification on invoice validated/paid' -
send_picking_done_mailBooleanhelp='Does the picking export/creation should send an email notification on Magento side?'string='Send email notification on picking done' -
storeview_idsOne2many → magento.storeviewcomodel_name='magento.storeview'inverse_name='store_id'readonly=Truestring='Storeviews' -
website_idMany2one → magento.websitecomodel_name='magento.website'ondelete='cascade'readonly=Truerequired=Truestring='Magento Website'
No public methods.
New fields (11)
-
backend_idMany2one → magento.backendcomodel_name='magento.backend'readonly=Truerelated='store_id.website_id.backend_id'required=Falsestore=Truestring='Magento Backend' -
catalog_price_tax_includedBooleanstring='Prices include tax' -
codeCharreadonly=True -
enabledBooleanreadonly=Truestring='Enabled' -
import_orders_from_dateDatetimehelp='do not consider non-imported sale orders before this date. Leave empty to import all sale orders'string='Import sale orders from date' -
lang_idMany2one → res.langcomodel_name='res.lang'string='Language' -
nameCharreadonly=Truerequired=True -
no_sales_order_syncBooleanhelp='Check if the storeview is active in Magento but its sales orders should not be imported.'string='No Sales Order Synchronization' -
section_idMany2one → crm.case.sectioncomodel_name='crm.case.section'string='Sales Team' -
sort_orderIntegerreadonly=Truestring='Sort Order' -
store_idMany2one → magento.storecomodel_name='magento.store'ondelete='cascade'readonly=Truestring='Store'
-
import_sale_orders(self)@api.multi
New fields (6)
-
codeCharreadonly=True -
import_partners_from_dateDatetimestring='Import partners from date' -
nameCharreadonly=Truerequired=True -
product_binding_idsMany2many → magento.product.productcomodel_name='magento.product.product'readonly=Truestring='Magento Products' -
sort_orderIntegerreadonly=Truestring='Sort Order' -
store_idsOne2many → magento.storecomodel_name='magento.store'inverse_name='website_id'readonly=Truestring='Stores'
-
import_partners(self)@api.multi
New fields (1)
-
create_invoice_onSelectionhelp='Should the invoice be created in Magento when it is validated or when it is paid in OpenERP?\nIf nothing is set, the option falls back to the same option on the Magento store related to the sales order.'selection=[('open', 'Validate'), ('paid', 'Paid')]string='Create invoice on action'
No public methods.
New fields (1)
-
magento_bind_idsOne2many → magento.product.categorycomodel_name='magento.product.category'inverse_name='openerp_id'string='Magento Bindings'
No public methods.
New fields (1)
-
magento_bind_idsOne2many → magento.product.productcomodel_name='magento.product.product'inverse_name='openerp_id'string='Magento Bindings'
No public methods.
New fields (4)
-
birthdayDatestring='Birthday' -
companyCharstring='Company' -
magento_address_bind_idsOne2many → magento.addresscomodel_name='magento.address'inverse_name='openerp_id'string='Magento Address Bindings' -
magento_bind_idsOne2many → magento.res.partnercomodel_name='magento.res.partner'inverse_name='openerp_id'string='Magento Bindings'
No public methods.
New fields (1)
-
magento_bind_idsOne2many → magento.res.partner.categorycomodel_name='magento.res.partner.category'inverse_name='openerp_id'readonly=Truestring='Magento Bindings'
No public methods.
New fields (1)
-
magento_bind_idsOne2many → magento.sale.ordercomodel_name='magento.sale.order'inverse_name='openerp_id'string='Magento Bindings'
-
copy_quotation(self)@api.multi -
get_parent_id(self)@api.one@api.depends('magento_bind_ids', 'magento_bind_ids.magento_parent_id')Return the parent order. For Magento sales orders, the magento parent order is stored in the binding, get it from there. -
write(self, vals)@api.multi
New fields (1)
-
magento_bind_idsOne2many → magento.sale.order.linecomodel_name='magento.sale.order.line'inverse_name='openerp_id'string='Magento Bindings'
-
copy_data(self, cr, uid, id, default=None, context=None) -
create(self, vals)@api.model
New fields (1)
-
magento_bind_idsOne2many → magento.stock.pickingcomodel_name='magento.stock.picking'inverse_name='openerp_id'string='Magento Bindings'
No public methods.
Loading…
Loading…