Metadata-Version: 2.1
Name: odoo-addon-ecommerce_connector
Version: 18.0.1.0.0.1
Requires-Python: >=3.10
Requires-Dist: odoo-addon-account_fiscal_position_partner_type==18.0.*
Requires-Dist: odoo-addon-account_payment_mode==18.0.*
Requires-Dist: odoo-addon-account_payment_sale==18.0.*
Requires-Dist: odoo==18.0.*
Summary: General E-Commerce Integration
Home-page: https://github.com/sygel-technology/sy-general-connector
License: AGPL-3
Author: Sygel
Classifier: Programming Language :: Python
Classifier: Framework :: Odoo
Classifier: Framework :: Odoo :: 18.0
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Description-Content-Type: text/x-rst

.. image:: https://odoo-community.org/readme-banner-image
   :target: https://odoo-community.org/get-involved?utm_source=readme
   :alt: Odoo Community Association

===================
Ecommerce Connector
===================

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

.. |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/license-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-sygel--technology%2Fsy--general--connector-lightgray.png?logo=github
    :target: https://github.com/sygel-technology/sy-general-connector/tree/18.0/ecommerce_connector
    :alt: sygel-technology/sy-general-connector

|badge1| |badge2| |badge3|

This module is a general e-commerce connector which can be used to
integrate any e-commerce with Odoo. It allows to import sale orders from
an external e-commerce into Odoo, invoice those sales and create
contacts and products if needed.

**Table of contents**

.. contents::
   :local:

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

1. **Enable the connector on the company**: Go to Settings > Companies >
   [your company], open the Ecommerce Connector tab and activate the
   checkbox Accept Ecommerce Connector.

2. **Create a Connection**: Go to Ecommerce Connector > Connection and
   create a new record:

   - Name: a descriptive label (e.g. "Shop")
   - Ecommerce ID: a unique numeric identifier agreed with the
     e-commerce platform
   - Company: the Odoo company that will own the imported orders
   - Language: language used for multilanguage fields

3. **Configure order and invoice behaviour**:

   - Enable Create Invoice if invoices should be generated automatically
   - Enable Validate Invoice to confirm them automatically
   - Enable Use Odoo Sales Seq. to use Odoo numbering instead of the
     ecommerce reference
   - Enable Check Customer VAT for VAT validation on business customers

4. **Configure search rules**: Define how records are matched:

   - Products: Ecommerce ID, SKU or Barcode
   - Contacts: Ecommerce ID, Email, VAT or Contact Info
   - Addresses: Ecommerce ID, Email or Contact Info

For more information, check the operations manual provided by Sygel.

Usage
=====

Once configured, the connector is ready to receive requests.

You can monitor calls going to Ecommerce Connector > Connector Calls.
Each call has a status: Draft, Done or Error. The default view shows
Draft and Error records for quick daily monitoring.

You can review mappings between Odoo and ecommerce records going to
Ecommerce Connector > Ecommerce Mappings. You have menu options for
Product Variants, Product Templates and Partner

**You can also test this connector using the postman examples provided
in the postman_examples folder**

For more information, check the operations manual provided by Sygel.

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

Future improvements detected for this module. They should be done in the
next migrations to upper versions:

- **Cleanup and encapsulation of duplicated code**. To do if the module
  is refactored in upper versions.

  - Simplify the error handling pattern. The error list is being
    continously propagated and checked through all the code. Operations
    are not aborted if an error is detected.
  - Reduce code of main file. Move functions to other files (not
    necessary orm models)
  - Simplify \_get_contact_domain() function
  - Simplify \_get_shipping_contact() function
  - Simplify \_get_invoice_contact() function
  - Move every values dict creation to a function for that. Review
    functions: \_create_new_product(), \_create_new_product_template(),
    \_create_payments()
  - Move every complex domain creation to a function for that. Review
    functions: \_find_product()
  - Refactor fiscal position and taxes calculation. Documentate its
    behaviour
  - Refactor and simplify mandatory_fields checks. Required fields could
    be defined in a data structure.
  - Refactor and simplify the \_create_response() function
  - Refactor and simplify the external_create_sale() function
  - Refactor and simplify the external_create_credit_note() function
  - Review the record matching methods between systems. Linking local
    and external delivery.carrier and account.payment.mode by name
    (translated) would probably need a change

- **Improve documentation**

- **Improve postman collection examples**

- Add help tooltips to configuration fields

- **Add unit tests**

- Move account_fiscal_position_partner_type dependency to a glue module

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

Bugs are tracked on `GitHub Issues <https://github.com/sygel-technology/sy-general-connector/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/sygel-technology/sy-general-connector/issues/new?body=module:%20ecommerce_connector%0Aversion:%2018.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
-------

* Sygel

Contributors
------------

- `Sygel <https://www.sygel.es>`__:

  - Manuel Regidor
  - Alberto Martínez
  - Valentin Vinagre
  - Harald Panten

Maintainers
-----------

This module is part of the `sygel-technology/sy-general-connector <https://github.com/sygel-technology/sy-general-connector/tree/18.0/ecommerce_connector>`_ project on GitHub.

You are welcome to contribute.
