Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MIG] connector_prestashop: Migration to 15.0 #179

Open
wants to merge 101 commits into
base: 15.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
9ed4e0b
[MIG] connector_prestashop: Begin of migration to v10
sergio-teruel May 29, 2017
50b294f
[FIX+IMP] connector_prestashop: Several things:
simahawk May 8, 2017
af9a4ad
[FIX+IMP] connector_prestashop: Several things
guewen May 18, 2017
3627624
[FIX] connector_prestashop: Fix atomicity design (#81)
nbessi Sep 13, 2017
a57ed0d
[FIX] connector_prestashop: Adapt to new components + continue migration
sergio-teruel Sep 23, 2017
a7d4894
[FIX+MIG] connector_prestashop: Continue migration
bguillot Apr 9, 2018
2681278
[FIX+MIG] connector_prestashop: Continue migration
flotho Apr 10, 2018
f80c731
[FIX] connector_prestashop: More fixes
bguillot Apr 10, 2018
98752bb
[FIX+IMP] connector_prestashop: More things
flotho Apr 16, 2018
711c1b5
[WIP] start to port tests
bguillot Apr 17, 2018
5c625c7
[FIX+IMP] connector_prestashop: Several refinements:
flotho Apr 17, 2018
9343ca0
[IMP+FIX] connector_prestashop: Refinements:
bguillot Apr 27, 2018
c71dd22
[FIX] connector_prestashop: Several fixes
Jul 16, 2018
80ede06
Improve partner import performance
florian-dacosta Aug 14, 2018
ad12440
[FIX] connect_prestashop: Merge conflicts
pedrobaeza Aug 21, 2018
9a0db07
[FIX] connector_prestashop: Greenify branch
Sep 6, 2018
b379a47
[FIX] Travis + requirements.txt + connector_prestashop
pedrobaeza Sep 25, 2018
19a6a17
[UPD] Update connector_prestashop.pot
oca-travis Sep 25, 2018
e98abfd
[FIX] connector_prestashop: Fix resync
Nov 30, 2018
b36da88
[UPD] Update connector_prestashop.pot
oca-travis Dec 5, 2018
ae355b7
Added translation using Weblate (French)
gurneyalex Dec 11, 2018
8402a8c
[10.0] [FIX] connector_prestashop: Fix export stock test failing rand…
FFernandez-PlanetaTIC Jan 16, 2019
6952257
[UPD] Update connector_prestashop.pot
oca-travis Jan 16, 2019
1ace6da
Update translation files
oca-transbot Jan 27, 2019
9ace63f
[FIX] connector_prestashop: Not correctly synchronized changes
pedrobaeza Mar 22, 2019
29b140f
Migrate connector_prestashop to version 12
florian-dacosta Feb 6, 2019
bdc80a5
Imprve way to import and filter base data
florian-dacosta Feb 6, 2019
ed69926
Add decorator to automatically retry job failed because of network fa…
florian-dacosta Feb 6, 2019
72f405b
Save prestashop address alias in a separated field to not polute the …
florian-dacosta Feb 6, 2019
ef9b648
Add margin when importing order to avoid missing one once in a while
florian-dacosta Feb 6, 2019
021edb7
Fix tests and pep8
florian-dacosta Feb 6, 2019
77a213c
Do not by pass price_extra native odoo field to compute the price of …
florian-dacosta Apr 1, 2019
b741bac
Fix refund import and validation
florian-dacosta May 11, 2019
e82fc02
refactore refund - pylint - oca dependencies and requirement
florian-dacosta May 11, 2019
7b1967a
Fix misc
florian-dacosta Jun 6, 2019
edde800
Do not import all supplierinfo together with supplier. It is already …
florian-dacosta Jun 11, 2019
aae5d8a
[FIX] Remove not generic code
florian-dacosta Sep 12, 2019
97bcc70
[Fix] Manage company customer
florian-dacosta Sep 20, 2019
883e4bf
Remove company_id mapping on delivery carrier since it is a related w…
florian-dacosta Sep 21, 2019
26361a6
Fix template matching if combination does not have any code to match
florian-dacosta Oct 17, 2019
9f3d9b2
[FIX] Avoid changing product default_code when mathing by reference o…
florian-dacosta Jan 12, 2020
10e3623
Avoid division by 0 in case of 100% discount on sale order line
florian-dacosta Jan 16, 2020
6454f20
Fix travis
florian-dacosta Jan 28, 2020
bed1716
[FIX]connector_prestashop: Improve check_vat function taking the part…
jesusVMayor Apr 24, 2020
6385272
[FIX]connector_prestashop: Change parent of sale order states menu.
jesusVMayor Apr 24, 2020
1370c15
[FIX]connector_prestashop: Remove quantity field, renamed immediately…
jesusVMayor Apr 24, 2020
c7910fa
Fix refund creation when carrier changed on sale order
florian-dacosta Apr 28, 2020
8ac3174
Avoid trying to inactive already inactive variants
florian-dacosta Aug 12, 2020
ea62390
[IMP] connector_prestashop: black, isort, prettier
florian-dacosta Dec 23, 2020
48bb6b9
[MIG] connector_prestashop: Migration to 14.0
florian-dacosta Dec 23, 2020
db41d94
Add decorator to automatically retry job failed because of network fa…
florian-dacosta Feb 6, 2019
d0f2dbe
Avoid changing product_tmpl_id at each sync
florian-dacosta Nov 10, 2020
50ff175
Adapt product import to v14
florian-dacosta Dec 24, 2020
88e2dba
flush before commit to avoid data loss
florian-dacosta Dec 24, 2020
9696ae3
Misc migration
florian-dacosta Dec 24, 2020
e8d1416
Fix
florian-dacosta Jan 8, 2021
d573bee
sale onchange
florian-dacosta Jan 14, 2021
6e712c4
delivery sale line
florian-dacosta Jan 15, 2021
cf96338
Add some job function data
florian-dacosta Feb 25, 2021
b2b502e
Fix pricelist import and pass binding to skip method on import
florian-dacosta Feb 25, 2021
7bde563
Fix channel in xml
florian-dacosta Feb 25, 2021
30f5fc0
Always pass parent record when importing combination
florian-dacosta Mar 30, 2021
25eb1f7
Remove checkpoint as it has been removed from connector. It could and…
florian-dacosta Apr 2, 2021
55bdd62
Update channel names
florian-dacosta Apr 2, 2021
ba5b573
Avoid setting unactive lang to partner
florian-dacosta Apr 7, 2021
35b4872
Add default sequence when importing product supplierinfo
florian-dacosta Apr 23, 2021
f6094a7
Fix message import
florian-dacosta May 28, 2021
040f2c7
Fix string formatting
florian-dacosta May 28, 2021
9c08e5a
Some fixes around refund import
florian-dacosta Oct 28, 2021
dfeaaf2
Add missing queue job function
florian-dacosta Dec 23, 2021
ee0eeb1
Consider unactive template attribute lines when importing product wit…
florian-dacosta Dec 27, 2021
fbd7ea1
Make possible to have multiple binding with same backend_id/odoo_id f…
florian-dacosta Dec 27, 2021
9afbb69
Fix import of template if it still has supplierinfo relatd to combina…
florian-dacosta Dec 28, 2021
96277a3
Manage sale order import from multi shop
florian-dacosta Jan 2, 2022
e53b904
Fix refund import
florian-dacosta Jan 4, 2022
d42143b
Add method for cron to import refunds
florian-dacosta Jan 4, 2022
a49566a
There is no more account_id on invoices/refunds in v14, remove the ma…
florian-dacosta Jan 4, 2022
ba5852f
Send out_of_stock to prestashop only if set in Odoo to avoid setting …
florian-dacosta Jan 19, 2022
9ac2345
Do not change a refund if it has already been imported (and maybe pos…
florian-dacosta Jan 19, 2022
5399366
[FIX] Delete obsolete attribute lines on template
florian-dacosta Feb 9, 2022
6b3da7f
[FIX] Take shipping cost into accoutn when checking total amount of a…
florian-dacosta Feb 9, 2022
38943cb
[IMP] connector_prestashop: black, isort, prettier
hailangvn Mar 17, 2022
0cf888f
[FIX] connector_prestashop: pass tests
hailangvn Mar 17, 2022
442ef33
[IMP] catalog_manager: New PrestaShop fields for low stock
Oct 4, 2019
1b12d80
[FIX]connector_prestashop, connector_prestashop_catalog_manager: Mapped
MPoch-PlanetaTIC Mar 31, 2020
141e6bb
[IMP] connector_prestashop: New keys for version 1.6.1.12
Nov 30, 2018
2458fd9
[MIG] connector_prestashop_catalog_manager: Migration to 12.0
MPoch-PlanetaTIC Aug 7, 2020
d14fa0e
[FIX]connectore_prestashop, connector_prestashop_catalog_manager:
MPoch-PlanetaTIC Nov 3, 2020
9ec9517
[FIX] connector_prestashop: Fixed code error on Import Refunds from P…
MPoch-PlanetaTIC Nov 16, 2020
ab97e49
[FIX] connector_prestashop: prestashop.product.combination.mapper
MPoch-PlanetaTIC Dec 1, 2020
d7c5881
[FIX] connector_prestashop, connector_prestashop_castalog_manager: Fix
MPoch-PlanetaTIC Dec 18, 2020
efc7f66
[FIX] connector_prestashop: Do not update product_tmpl_id if is not
Mar 2, 2021
6c65562
[FIX]connector_prestashop: Fix stock exportation on product with an
MPoch-PlanetaTIC Mar 5, 2021
ecc86d7
[FIX,IMP] odoo 14.0 changes, remove two duplicated records
hailangvn May 18, 2021
0fec33e
[FIX] connector_prestashop: error strings
nilshamerlinck May 25, 2021
463bd5f
[IMP] connector_prestashop: black, isort, prettier
hailangvn Apr 30, 2022
f6c8e89
[FIX] connector_prestashop: mute too long vcr log
hailangvn May 3, 2022
25fc332
[IMP] connector_prestashop: black, isort
flachica May 6, 2022
5979647
[MIG] connector_prestashop 15.0
flachica May 6, 2022
7e5628b
[FIX] connetor_prestashop: valid_ean and detailed_type when create pr…
May 27, 2024
3370715
Change of decimals for sales order import
Aug 6, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
205 changes: 205 additions & 0 deletions connector_prestashop/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,205 @@
=========================
PrestaShop-Odoo connector
=========================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:d55da052f17578b24462cb1021eff586a11e452868fad86cfeb82fb891b692b4
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fconnector--prestashop-lightgray.png?logo=github
:target: https://github.com/OCA/connector-prestashop/tree/15.0/connector_prestashop
:alt: OCA/connector-prestashop
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/connector-prestashop-15-0/connector-prestashop-15-0-connector_prestashop
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/connector-prestashop&target_branch=15.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module connects Odoo and PrestaShop.

PrestaShop (http://www.prestashop.com/) is a popular e-commerce platform
written in PHP/MySQL and published under the Open Software licence v3.0.

This module allows the synchronization of the following objects from PrestaShop
to Odoo:

* Websites
* Stores and languages
* Carriers
* Product categories
* Products
* Combinations of products
* Partner categories
* Customers

Once these objects are synchronised, it will allow the import of sales orders,
together with the related customers.

As an extra feature, you can also export the stock quantities back to
PrestaShop.

If you want to export from Odoo to PrestaShop changes made on the products,
product categories or product images, you need to install
*connector_prestashop_catalog_manager* module in this same repository.

This connector supports PrestaShop version up to 1.6.11. Maybe later versions
are also supported, but they haven't been tested. It uses the webservices of
PrestaShop.

**Table of contents**

.. contents::
:local:

Configuration
=============

To configure this module, you need to set several things in both PrestaShop
and Odoo:

Steps in PrestaShop
===================

#. Go to the control panel (usually at <url>/adminps).
#. Login into the system.
#. Go to *Advanced Parameters > Web service*
#. Add a new entry.
#. Generate a new API key that will be needed later.
#. Grant all the needed access according your security policy.

Steps in Odoo
=============

#. Go to *Connectors > PrestaShop > Backends*.
#. Create a new record for registering a PrestaShop backend. You will bind
this backend to an specific company and warehouse.
#. Define the main URL of the PrestaShop web, and the webservice key you
got in PrestaShop.
#. Define other parameters like the discount and shipping products, or if the
taxes are included in the price.
#. Click on "Synchronize Metadata" button. This will bring the basic shop
information that you can find on *Websites* and *Stores* menus.
#. Click on "Synchronize Base Data" button. This will import carriers,
languages, tax groups and the rest of base data that are needed for the
proper work.
#. Go to *Accounting > Configuration > Taxes > Tax Groups*, and include
for each of the tax definition imported from PrestaShop, the corresponding
taxes in Odoo.
#. Activate the job runner, checking the connector documentation for setting
the server correctly for using it in
http://odoo-connector.com/guides/jobrunner.html
#. Alternatively, if you are not able to activate it, you can enable the
scheduled job called "Enqueue Jobs".
#. Activate the scheduled jobs for importing the records you want:

* PrestaShop - Export Stock Quantities
* PrestaShop - Import Carriers
* PrestaShop - Import Customers and Groups
* PrestaShop - Import Products and Categories
* PrestaShop - Import Sales Orders
* PrestaShop - Import suppliers
* PrestaShop - Payment methods

Usage
=====

To use this module, you need to:

#. Go to *Connectors > Queue > Jobs*, and check the correct enqueuing of
the tasks.
#. Check on each menu the resulting imported records (Customers, Sales
Orders...)

Test dependencies
=================

Extra libs are required to run the tests:
* ``vcrpy``
* ``freezegun``

Known issues / Roadmap
======================

* Work with multiple warehouses.
* Tests.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/connector-prestashop/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/connector-prestashop/issues/new?body=module:%20connector_prestashop%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Akretion
* Camptocamp
* AvanzOSC
* Tecnativa
* Mind And Go

Contributors
~~~~~~~~~~~~

* Sébastien Beau <[email protected]>
* Benoît Guillot <[email protected]>
* Alexis de Lattre <[email protected]>
* Guewen Baconnier <[email protected]>
* Sergio Teruel <[email protected]>
* Mikel Arregi <[email protected]>
* Pedro M. Baeza <[email protected]>
* Simone Orsi <[email protected]>
* Florent THOMAS <[email protected]>
* Francisco Fernández <[email protected]>
* Florian da Costa <[email protected]>
* Marc Poch <[email protected]>
* JesusVMayor <[email protected]>
* Hai Lang <[email protected]>

* `Greenice <https://www.greenice.com>`_:

* Fernando La Chica <[email protected]>

Other credits
~~~~~~~~~~~~~

* `PrestaShop logo <http://seeklogo.com/prestashop-logo-178788.html>`_.
* `Odoo logo <https://www.odoo.com/es_ES/page/brand-assets>`_.
* `Cable <https://openclipart.org/detail/174134/cable-with-connector>`_.

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/connector-prestashop <https://github.com/OCA/connector-prestashop/tree/15.0/connector_prestashop>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
6 changes: 6 additions & 0 deletions connector_prestashop/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

from . import connector

from . import components
from . import models
62 changes: 62 additions & 0 deletions connector_prestashop/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Copyright 2011-2013 Camptocamp
# Copyright 2011-2013 Akretion
# Copyright 2015 AvanzOSC
# Copyright 2015-2016 Tecnativa
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "PrestaShop-Odoo connector",
"version": "15.0.1.0.0",
"license": "AGPL-3",
"depends": [
"account",
"base_vat", # for vat validation on partner address
"product",
"product_multi_category", # oca/product-attribute
"product_multi_image", # oca/product-attribute
"connector_ecommerce", # oca/connector-ecommerce
"purchase",
"onchange_helper",
],
"external_dependencies": {
"python": [
"html2text",
"prestapyt",
# tests dependencies
"freezegun",
"vcrpy",
"bs4",
],
},
"author": "Akretion,"
"Camptocamp,"
"AvanzOSC,"
"Tecnativa,"
"Mind And Go,"
"Odoo Community Association (OCA)",
"website": "https://github.com/OCA/connector-prestashop",
"category": "Connector",
"demo": [],
"data": [
"security/ir.model.access.csv",
"security/prestashop_security.xml",
"data/queue_job_data.xml",
"data/cron.xml",
"data/product_decimal_precision.xml",
"data/ecommerce_data.xml",
"views/prestashop_backend_view.xml",
"views/product_view.xml",
"views/product_category_view.xml",
"views/image_view.xml",
"views/delivery_view.xml",
"views/connector_prestashop_menu.xml",
"views/partner_view.xml",
"views/sale_view.xml",
"views/account_view.xml",
"views/stock_view.xml",
"views/queue_job_views.xml",
"demo/backend.xml",
],
"installable": True,
"application": True,
}
14 changes: 14 additions & 0 deletions connector_prestashop/components/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

# ConnectorUnit needs to be registered
from . import core
from . import backend_adapter
from . import binder
from . import importer
from . import exporter
from . import listener
from . import mapper
from . import deleter
from . import auto_matching_importer
from . import exception
from . import version_key
Loading
Loading