Skip to main content

General E-Commerce Integration

Project description

Odoo Community Association

Ecommerce Connector

Beta License: AGPL-3 sygel-technology/sy-general-connector

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

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. 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.

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

Credits

Authors

  • Sygel

Contributors

  • Sygel:

    • Manuel Regidor

    • Alberto Martínez

    • Valentin Vinagre

    • Harald Panten

Maintainers

This module is part of the sygel-technology/sy-general-connector project on GitHub.

You are welcome to contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file odoo_addon_ecommerce_connector-18.0.1.0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo_addon_ecommerce_connector-18.0.1.0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c2ef5b9f6aa2c9270570bfd9dd67a576157d6fed6dfdcd93284cec1b0a950b7f
MD5 5aefc2897cf42224509bd98368a62270
BLAKE2b-256 1ec8cc4ae700ff9289b2edb9fc31365f0575f9bd5bdc8d62d0c63d3c3097eba6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page