Skip to main content

Define backends, exchange types, exchange records, basic automation and views for handling EDI exchanges.

Project description

Beta License: LGPL-3 OCA/edi Translate me on Weblate Try me on Runboat

Base EDI backend.

Provides following models:

  1. EDI Backend, to centralize configuration

  2. EDI Backend Type, to classify EDI backends (eg: UBL, GS1, e-invoice, pick-yours)

  3. EDI Exchange Type, to define file types of exchange

  4. EDI Exchange Record, to define a record exchanged between systems

Also define a mixin to be inherited by records that will generate EDIs

Table of contents

Configuration

This module aims to provide an infrastructure to simplify interchangability of documents between systems providing a configuration platform. It will be inherited by other modules in order to define the proper implementations of components.

In order to define a new Exchange Record, we need to configure:

  • Backend Type

  • Exchange Type

  • Backend

  • Components

Jobs

  1. Internal User: might be an EDI user without even knowing about it, triggering EDI flows by some of his actions on business records; does not need access to related queue jobs.

  2. EDI User: more conscious EDI user that might sometimes need to debug things a bit further and thus needs access to related queue jobs.

  3. EDI Manager: full configuration access.

Component definition

The component usage must be defined like edi.{direction}.{kind}.{code} where:

  • direction is output or input

  • kind can be: generate, send, check, process, receive

  • code is the {backend type code} or {backend type code}.{exchange type code}

User EDI generation

On the exchange type, it might be possible to define a set of models, a domain and a snippet of code. After defining this fields, we will automatically see buttons on the view to generate the exchange records. This configuration is useful to define a way of generation managed by user.

Exchange type rules configuration

Exchange types can be further configured with rules. You can use rules to:

  1. make buttons automatically appear in forms

  2. define your own custom logic

Go to an exchange type and go to the tab “Model rules”. There you can add one or more rule, one per model. On each rule you can define a domain or a snippet to activate it. In case of a “Form button” kind, if the domain and/ the snippet is/are satisfied, a form btn will appear on the top of the form. This button can be used by the end user to manually generate an exchange. If there’s more than a backend and the exchange type has not a backend set, a wizard will appear asking to select a backend to be used for the exchange.

In case of “Custom” kind, you’ll have to define your own logic to do something.

Usage

After certain operations or manual execution, Exchange records will be generated. This Exchange records might be input records or outputs records.

The change of state can be manually executed by the system or be managed through by ir.cron.

Output Exchange records

An output record is intended to be used for exchange information from Odoo to another system.

The flow of an output record should be:

  • Creation

  • Generation of data

  • Validation of data

  • Sending data

  • Validation of data processed properly by the other party

Input Exchange records

An input record is intended to be used for exchange information another system to odoo.

The flow of an input record should be:

  • Creation

  • Reception of data

  • Checking data

  • Processing data

Known issues / Roadmap

14.0.1.0.0

The module name has been changed from edi to edi_oca.

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

  • ACSONE

  • Creu Blanca

  • Camptocamp

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

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.

Current maintainers:

simahawk etobella

This module is part of the OCA/edi project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Project details


Release history Release notifications | RSS feed

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

odoo14_addon_edi_oca-14.0.1.24.0-py3-none-any.whl (119.2 kB view details)

Uploaded Python 3

File details

Details for the file odoo14_addon_edi_oca-14.0.1.24.0-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo14_addon_edi_oca-14.0.1.24.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2636f5076aac5c68552c07ff5f365dcc6bc41b7e852fc6613b8f8e3cac833aa1
MD5 9175b5aac5632ac31d78c325ed759e60
BLAKE2b-256 30b47187651906bc056c036469ae51cc8c79cf1298e35778c81f2435e1e28889

See more details on using hashes here.

Supported by

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